自从更新到ADT 14,我不能再构建我的项目。它在更新之前构建得很好。

错误:

[2011-10-23 16:23:29 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/myapp/R$array;
[2011-10-23 16:23:29 - myProj] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/myapp/R$array;

类似的问题也有报道,我尝试了其中的建议,包括

重新启动Eclipse。 清理项目和重建-禁用“项目->自动生成”选项,然后“清理”和“生成”项目,然后尝试运行。将“自动构建”选项重置为开启 重新安装Android开发者工具 重新安装Eclipse(更新到最新版本3.7.1) 创建一个从文件系统导入的新项目 从subversion创建一个新项目。


当前回答

ADT R14更新更改了类进入bin/classes目录的位置(参见http://tools.android.com/recent/buildchangesinrevision14)。如果使用ANT,则应该将类的路径从bin更改为bin/classes。这对我很管用。

其他回答

尝试删除R.java并让eclipse重新生成它。

确保在Java Build Path下的Order and Export选项卡中未选中“android-support-v4.jar”

请遵循以下步骤:

项目属性 Java Build路径 订购及出口 取消“android-support-v4.jar”

转到\bin\dexedLibs,删除已经删除的库的所有jar,然后清理

我也遇到了同样的问题,这很奇怪,因为只有在使用Eclipse时才会发生这种情况(但Ant没有问题)。 我是这样解决的:

右键单击项目名称 选择“构建路径”->配置构建路径 在Java Build Path中,转到Order和Export选项卡 取消选中.jar库

只是有时: 在Order和Export选项卡中,我没有任何jar库,所以我没有选中Android私有库项。现在我的项目正在运行。

我在GooglePlayService库项目google-play-services.jar中得到了同样的错误消息。

我们使用maven,因此我必须在本地maven存储库中添加库。(mvn install:install-file -Dfile=xxx)

现在这个库在“Java Build Path”中出现了两次——> Libraries。

在Android依赖项中 在Maven依赖项中。

为了解决这个问题,我需要从google-play-services_lib/libs目录中删除这个库(它是自动使用的jar)