简体   繁体   English

转换为Dalvik格式失败,错误1 - 更新Android SDK和ADT后

[英]Conversion to Dalvik format failed with error 1 - After updating Android SDK & ADT

After updating SDK and ADT for the latest release, I tried to run my application and Eclipse log the following error: 在为最新版本更新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

I ran into this issue after updating to the October 2011 r15 version of ADT and SDK. 在更新到2011年10月的r15版本的ADT和SDK后,我遇到了这个问题。 My project uses 3 projects as libraries, so there is a lot of interdependence between the projects. 我的项目使用3个项目作为库,因此项目之间存在很多相互依赖关系。 This error comes up (I believe) when the build tool sees the same object get defined multiple times. 当构建工具看到多次定义同一个对象时,会出现此错误(我相信)。 My guess is Google changed up how the library references work, so my old project setup was no longer valid. 我的猜测是Google更改了库引用的工作方式,因此我的旧项目设置不再有效。

I tried messing with the project's library and build path settings, but I couldn't get the build to be stable. 我试图弄乱项目的库并构建路径设置,但我无法使构建稳定。 The solution I came up with was to: 我想出的解决方案是:

  1. Close Eclipse 关闭Eclipse
  2. Make a backup copy of the workspace 制作工作区的备份副本
  3. Delete the .project and .classpath files in each project 删除每个项目中的.project和.classpath文件
  4. Open a new workspace in Eclipse 在Eclipse中打开一个新工作区
  5. Add the project back in using the New Android Project wizard (selecting "Create project from existing source"). 使用New Android Project向导重新添加项目(选择“从现有源创建项目”)。 Note: This is different from importing an existing project. 注意:这与导入现有项目不同。

After I set up the library dependencies in the new workspace, everything compiled just fine. 在新工作区中设置库依赖项之后,所有编译都很好。 I had a lot of settings I didn't want to lose, so I copied the regenerated .project and .classpath files back into my original workspace and it has been working alright for me so far. 我有很多设置我不想丢失,所以我将重新生成的.project和.classpath文件复制回原来的工作区,到目前为止它一直对我有用。

我认为你应该做清洁项目并重建它,为我解决它。

The solution is: 解决方案是:

1) Delete the project (do no delete project contents from disk). 1)删除项目(不要从磁盘中删除项目内容)。
2) Delete the .project and .classpath files in the project. 2)删除项目中的.project.classpath文件。
3) Create new project with the current src ( Create project from existing source ) 3)使用当前src创建新项目( Create project from existing source

If this happens during export, delete files present in the bin directory of your project. 如果在导出期间发生这种情况,请删除项目bin目录中的文件。 and restart export. 并重新启动导出。 in less than 30 seconds is resolved 在不到30秒的时间内解决了

Go to Project-> Properties->Java Build Path->Libraries and remove all except the "Android XY" (in my case Android 5.0.1), You can keep android dependencies(if it doesn't contains any conflicting jar files). 转到Project-> Properties-> Java Build Path-> Libraries并删除除“Android XY”之外的所有内容(在我的案例中为Android 5.0.1),您可以保留android依赖项(如果它不包含任何冲突的jar文件) 。 Do the same for order and export (in Project-> Properties->Java Build Path-> Order and export). 对订单和导出执行相同操作(在项目 - >属性 - > Java构建路径 - >订单和导出中)。 Click OK. 单击确定。 Clean the project. 清理项目。 It should solve the problem. 它应该解决问题。 It is caused due to jar conflicting issues. 这是由于jar冲突问题引起的。

I had a cmd window open in the bin/dexedlibs and when i cd to the parent (bin), that solved the problem for me. 我在bin / dexedlibs中打开了一个cmd窗口,当我cd到父(bin)时,这解决了我的问题。 So it appears to be very subtle build errors. 所以它似乎是非常微妙的构建错误。 During a clean, the builder will remove the dexedlib folder, and perhaps that it gets an error during the rmdir will cause this failure also. 在清理期间,构建器将删除dexedlib文件夹,并且可能在rmdir期间出现错误也会导致此失败。

Creating a new project is not necessary. 不需要创建新项目。

Just delete the gen and bin folder and press project clean. 只需删除gen和bin文件夹,然后按项目清理即可。

try android update project 尝试android更新项目

when you use some libs from workspace maybe you must remove link-rows to they in Project -> Properties -> Java build path -> Source 当您从工作区使用某些库时,您可能必须在项目 - >属性 - > Java构建路径 - >源中删除它们的链接行

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM