自从迁移到ADK14后,我无法在Windows 7系统上构建新的apks版本.
构建失败,"转换为dalvik格式失败,错误1",而控制台充满了大量的"Dx坏类文件魔术(cafebabe)或版本(0033.0000)".
完整的例外文字:
com.android.ide.eclipse.adt.internal.build.DexException: Conversion to Dalvik format failed with error 1
at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:740)
at com.android.ide.eclipse.adt.internal.project.ExportHelper.exportReleaseApk(ExportHelper.java:204)
at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.doExport(ExportWizard.java:290)
at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.access$0(ExportWizard.java:229)
at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard$1.run(ExportWizard.java:214)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Run Code Online (Sandbox Code Playgroud)
我正在构建一个使用大量库的旧项目,所以可能问题与这个事实有关.已经完成了移动到ADK14时建议的所有"修复属性"/清理等(因为我自然会遇到所有这些问题),但他们没有帮助解决这个问题.
所有库都在相同的Android SDK和JDK/JRE版本上,所以这似乎不是问题.事实上,该应用程序很容易在调试中构建并安装在我的旧版本1.5 HTC Magic上 - 它只是当我需要导出已签名的应用程序包时,这会破坏.
[编辑]这是在Windows 7x64 PC上.我观察到在我的Linux笔记本电脑(Lucid Lynx)上包装apk以获得完全相同的代码绝对没有任何问题.
有任何想法吗?对此感到非常沮丧.
注意
显然,这个错误消息可以由各种不同的问题触发.我的特殊问题与Java 6/7无关,因为我从未安装过Java 7,并且编译器合规性设置为Java 6(我当时检查过,因为我已经看到其他地方建议的解决方案).