自从更新到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创建一个新项目。


当前回答

如果您有两个包含相同类名的jar,则会发生此错误,例如,我有两个库:jsr311-api-1.1.1.jar和jersey-core-1.17.1.jar,它们都包含类javax.ws.rs.ApplicationPath。我删除了jsr311-api-1.1.1.jar,它工作得很好。

其他回答

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

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

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

我基本上也面临着同样的问题。 我删除了BIN文件夹,然后从eclipse中删除了用于Order和Import的未使用的jar文件。 在那之后,IT工作了

我在/libs目录中有两个相关但不完全相同的guava库,在我删除了一个之后,问题就消失了。

在我的例子中,我删除了“src/com/..”目录中的“。apk”文件,清理项目并运行。

我已经尝试了之前所有的建议,但对我不起作用!

我在我的项目中通过删除一个库来解决这个问题:

原因:我在我的项目中包含了一个库项目,错误地没有从我的项目中删除之前的库,所以当我运行项目时,相同的库dex文件生成了两次,当我从项目的lib文件夹中删除相同的库时,错误消失了,构建成功创建,我希望其他人可能会面临同样的问题。