我有一个 Eclipse 工作区,其中包含两个 Android 应用程序和两个 Android 库——Facebook SDK 和我自己的库。当我尝试创建 APK 文件时,有时会收到错误消息“Conversion to dalvik format failed with error 1”。
我浏览了所有类似问题的答案,但没有任何效果:
- Facebook SDK 库以错误的方式引用了一个 jar,所以我修复了它。
- 我已经清理了构建。很多次。
- 我已经删除了 bin 文件夹。
- 这发生在多台开发机器上,但以防万一 - 我删除了工作区并重新开始。
我为此找到的唯一解决方法是一遍又一遍地重试,直到它起作用。除了放弃 Android 并只做 iOS 和 Windows Phone 版本,我还能做什么?以这种方式开发任何东西都是不可能的。
更新:在其中一台计算机上,我得到交替错误,有时是 Dalvik 错误,有时它抱怨它无法导出 ...\facebook-android-sdk-3.0\facebook\bin\facebooksdk.jar 。
更新 2:Eclipse 日志 (.metadata/.log) 显示了异常的详细信息:
!ENTRY com.android.ide.eclipse.adt 4 0 2013-04-12 00:14:59.163
!MESSAGE Export Wizard Error
!STACK 1
org.eclipse.core.runtime.CoreException: Conversion to Dalvik format failed with error 1
at com.android.ide.eclipse.adt.internal.project.ExportHelper.exportReleaseApk(ExportHelper.java:312)
at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.doExport(ExportWizard.java:296)
at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.access$0(ExportWizard.java:233)
at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard$1.run(ExportWizard.java:218)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Caused by: 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:751)
at com.android.ide.eclipse.adt.internal.project.ExportHelper.exportReleaseApk(ExportHelper.java:269)
... 4 more
!SUBENTRY 1 com.android.ide.eclipse.adt 4 0 2013-04-12 00:14:59.163
!MESSAGE Conversion to Dalvik format failed with error 1
!STACK 0
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:751)
at com.android.ide.eclipse.adt.internal.project.ExportHelper.exportReleaseApk(ExportHelper.java:269)
at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.doExport(ExportWizard.java:296)
at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.access$0(ExportWizard.java:233)
at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard$1.run(ExportWizard.java:218)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)