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


当前回答

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

其他回答

我的解决方案:

备份您的代码! 导航到您的项目工作区(不是您的项目)并运行以下命令: dev1:workspace$ cd ~/Documents/workspace/.metadata/.plugins/ Dev1:workspace$ rm -rf org.eclipse.core.resources 导航到Eclipse目录并键入以下命令: Dev1:eclipse$ ./eclipse clear Eclipse将从一个空的工作空间开始—不用担心,您的项目仍然在那里。 简单地创建新的项目从现有的资源和事情应该肉汁。

我收到的确切错误是: [2012-02-07 14:15:53 - Dex Loader]无法执行Dex:多个Dex文件定义Landroid/support/v4/view/PagerAdapter; [2012-02-07 14:15:53 - ProjectCloud]转换到Dalvik格式失败:无法执行dex:多个dex文件定义landoid /support/v4/view/PagerAdapter;

当我从adt 14升级到15时,我遇到了这个问题,为了让它工作,我最终只是删除了。eclipse文件夹(连同我的设置),并重新安装adt 15。

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

这个问题发生在我身上,我在我的libs文件夹中有一个外部的。jar,名为gson-2.2.2.jar,但出于某种原因,其中有两个,gson-2.2.2.jar和gson-2.2.2.jar(1),我简单地删除了后者,我的项目再次建立良好。

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