2011-11-14 30 views
5

更新SDK和ADT为最新版本后,我试图运行我的应用程序和Eclipse记录以下错误:转换为Dalvik的格式错误1失败 - 更新的Android SDK和ADT

[- RichReaderDemo] Dx 
UNEXPECTED TOP-LEVEL EXCEPTION: 
java.lang.IllegalArgumentException: already added: Lbr/com/digitalpages/renderer/NewReaderActivity; 
[- RichReaderDemo] Dx at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123) 
[- RichReaderDemo] Dx at com.android.dx.dex.file.DexFile.add(DexFile.java:163) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.processClass(Main.java:486) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.processFileBytes(Main.java:455) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.access$400(Main.java:67) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:394) 
[- RichReaderDemo] Dx at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:245) 
[- RichReaderDemo] Dx at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:131) 
[- RichReaderDemo] Dx at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:109) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.processOne(Main.java:418) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.processAllFiles(Main.java:329) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.run(Main.java:206) 
[- RichReaderDemo] Dx at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
[- RichReaderDemo] Dx at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
[- RichReaderDemo] Dx at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
[- RichReaderDemo] Dx at java.lang.reflect.Method.invoke(Method.java:616) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.build.DexWrapper.run(DexWrapper.java:179) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:729) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.build(PostCompilerBuilder.java:602) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:629) 
[- RichReaderDemo] Dx at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:172) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:282) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:363) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.resources.Project$1.run(Project.java:545) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:524) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.resources.Project.build(Project.java:123) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.project.ProjectHelper.build(ProjectHelper.java:869) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.launch(LaunchConfigDelegate.java:146) 
[- RichReaderDemo] Dx at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:853) 
[- RichReaderDemo] Dx at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:702) 
[- RichReaderDemo] Dx at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:923) 
[- RichReaderDemo] Dx at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1126) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) 
[- RichReaderDemo] Dx 
UNEXPECTED TOP-LEVEL EXCEPTION: 
java.lang.IllegalArgumentException: already added: Lbr/com/digitalpages/commons/activity/LoadingActivity; 
[- RichReaderDemo] Dx at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123) 
[- RichReaderDemo] Dx at com.android.dx.dex.file.DexFile.add(DexFile.java:163) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.processClass(Main.java:486) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.processFileBytes(Main.java:455) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.access$400(Main.java:67) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:394) 
[- RichReaderDemo] Dx at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:245) 
[- RichReaderDemo] Dx at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:131) 
[- RichReaderDemo] Dx at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:109) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.processOne(Main.java:418) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.processAllFiles(Main.java:329) 
[- RichReaderDemo] Dx at com.android.dx.command.dexer.Main.run(Main.java:206) 
[- RichReaderDemo] Dx at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
[- RichReaderDemo] Dx at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
[- RichReaderDemo] Dx at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
[- RichReaderDemo] Dx at java.lang.reflect.Method.invoke(Method.java:616) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.build.DexWrapper.run(DexWrapper.java:179) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:729) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.build(PostCompilerBuilder.java:602) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:629) 
[- RichReaderDemo] Dx at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:172) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:282) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:363) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.resources.Project$1.run(Project.java:545) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:524) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.resources.Project.build(Project.java:123) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.project.ProjectHelper.build(ProjectHelper.java:869) 
[- RichReaderDemo] Dx at com.android.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.launch(LaunchConfigDelegate.java:146) 
[- RichReaderDemo] Dx at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:853) 
[- RichReaderDemo] Dx at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:702) 
[- RichReaderDemo] Dx at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:923) 
[- RichReaderDemo] Dx at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1126) 
[- RichReaderDemo] Dx at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) 
[- RichReaderDemo] Dx 2 errors; aborting 
[- RichReaderDemo] Conversion to Dalvik format failed with error 1 

回答

12

我更新后,就遇到了这个问题到2011年10月的ADT和SDK的r15版本。我的项目使用3个项目作为库,所以项目之间有很多相互依赖关系。这个错误出现了(我相信)当构建工具看到同一个对象被多次定义时。我的猜测是谷歌改变了图书馆参考工作的方式,所以我旧的项目设置不再有效。

我试图搞乱项目的库和构建路径设置,但我无法让构建稳定。我想出了解决的办法是:

  1. 关闭Eclipse
  2. 使工作区
  3. 删除每个项目
  4. 在Eclipse中打开一个新的工作区。项目和classpath文件的备份副本
  5. 使用新建Android项目向导(选择“从现有源创建项目”)重新添加项目。注意:这与导入现有项目不同。

当我在新的工作区中设置了库依赖关系之后,编译的所有东西都很好。我有很多我不想丢失的设置,因此我将重新生成的.project和.classpath文件复制回原始工作空间,至今为止我一直在为我工作。

+1

类似的方法也解决了我(创建一个新项目) –

+0

啊是的,你的评论是更简洁:“创建一个新的项目”:) –

+0

救了我!谢谢! – marienke

4

我想你应该做Clean Project并重建它,为我解决它。

0

尝试android update project

当您使用从工作区的一些库也许您必须删除链接行,他们在项目 - >属性 - > Java构建路径 - >源

2

解决方法是:

1)删除项目(不要从磁盘删除项目内容)。
2)删除项目中的.project.classpath文件。
3)创建与当前SRC(Create project from existing source

0

新的项目,我必须在bin/dexedlibs打开CMD窗口,当我cd到父(BIN),即解决了这个问题对我来说。所以它看起来是非常微妙的构建错误。在清理期间,构建器将删除dexedlib文件夹,并且可能在rmdir期间出现错误也会导致此故障。

2

如果在导出过程中发生这种情况,请删除项目bin目录中的文件。并重新启动导出。在不到30秒的时间内解决了

0

无需创建新项目。

只需删除gen和bin文件夹,然后按项目清理。

1

转到项目 - >属性 - > Java构建路径 - >库,并删除除“Android X.Y”(在我的情况下为Android 5.0。1),你可以保持android依赖(如果它不包含任何冲突的jar文件)。对订单和导出执行相同的操作(在Project-> Properties-> Java Build Path-> Order and export)。点击确定。清理项目。它应该解决问题。 这是由于jar冲突问题引起的。

相关问题