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


当前回答

发现了另一个发生此问题的场景: 问题是libs文件夹在项目首选项中被用作Source,因此导出了两次。 解决方法:右键单击libs文件夹->构建路径->从构建路径删除

其他回答

从引用库中删除生成的R包。有时“清理和重建”不会删除旧的R生成的文件。

我有几个库项目,在AndroidManifest中指定了相同的包名(因此R.java不会生成重复的字段名)。我不得不从AndroidManifest.xml中删除所有库项目的任何权限和活动,以删除错误,因此Manifest.java没有多次创建。希望这能帮助到一些人。

我已经尝试了上面的大部分解决方案,在过去,其中一些是有效的。

但是这一次它们都不起作用,所以我删除了我的库项目的.jar文件。并重新构建库和应用程序项目。

这次成功了!

在项目资源管理器中选择项目,右键单击并选择属性-> Java构建路径-> Source ->选中源文件夹的“允许输出文件夹”复选框

当我导入一个.jar文件(实际上它是httpmime-4.3.jar)并试图使用它时,出现了这个错误。对我来说,解决方案很简单:我从libs文件夹中删除了.jar文件,并从Order and Export中删除了它。再次运行项目,它工作了,所以我再次添加了.jar文件,最终它是好的。