5

为最新版本更新 SDK 和 ADT 后,我尝试运行我的应用程序,Eclipse 记录以下错误:

[- 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
4

8 回答 8

11

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

我尝试弄乱项目的库和构建路径设置,但我无法使构建稳定。我想出的解决方案是:

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

在新工作区中设置库依赖项后,一切都编译得很好。我有很多我不想丢失的设置,所以我将重新生成的 .project 和 .classpath 文件复制回我原来的工作区,到目前为止它对我来说一切正常。

于 2011-11-15T23:23:49.893 回答
4

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

于 2011-11-14T17:00:28.083 回答
2

解决方案是:

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

于 2013-03-19T13:51:36.097 回答
2

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

于 2015-03-18T18:50:09.270 回答
1

Go to Project-> Properties->Java Build Path->Libraries and remove all except the "Android X.Y" (in my case Android 5.0.1), You can keep android dependencies(if it doesn't contains any conflicting jar files). Do the same for order and export (in Project-> Properties->Java Build Path-> Order and export). Click OK. Clean the project. It should solve the problem. It is caused due to jar conflicting issues.

于 2015-05-29T12:00:19.067 回答
0

尝试android更新项目

当您使用工作区中的某些库时,您可能必须在 Project -> Properties -> Java build path -> Source 中删除它们的链接行

于 2011-11-14T17:42:36.957 回答
0

我在 bin/dexedlibs 中打开了一个 cmd 窗口,当我 cd 到父级 (bin) 时,这为我解决了问题。所以它似乎是非常微妙的构建错误。在清理过程中,构建器将删除 dexedlib 文件夹,并且可能在 rmdir 过程中出现错误也会导致此故障。

于 2014-08-19T18:26:31.013 回答
0

不需要创建新项目。

只需删除 gen 和 bin 文件夹,然后按 project clean。

于 2015-05-06T21:02:02.040 回答