自从更新到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 Rev 14更改二进制文件的存储位置。我删除了整个bin目录,重新启动Eclipse,清理构建并强制重新构建。起初,这似乎奏效了,但在下一次运行后,问题又出现了。

我最终发现我的bin目录包含在项目构建路径中。我将bin从构建路径中排除,并重复上述步骤。这解决了我的问题。

其他回答

以上的方法对我都不起作用,但我的方法就像一个咒语!

问题发生在用户使用eclipse构建依赖库时。为了得到解

步骤1:使用Delete workspace source永久地从Eclipse中删除库(如支持库项目v4或v13)

步骤2:重新导入库并将其包含到项目中

第三步:清洁和重建

完成了!

对我来说,这个问题只存在,只要有Android库项目涉及到我的项目。所以当我删除所有的库,并按照你说的那样,我可以再次运行我的应用程序。 如果涉及到库,即使是删除箱子的技巧也行不通。

我不明白为什么这个错误今天第一次出现,因为我现在使用ADT 14好几天了。不过还有其他虫子让我很开心。

[为我解决]

Eclipse项目属性->Java构建路径->订单和导出

取消勾选Android私有库。

我从构建路径中删除了Android依赖项,它起作用了。

编辑:忽略它。我在maven依赖项和libs文件夹中有相同的jar。我移除了lib文件夹里的那个。

我来晚了,但加上我自己的经验,这样我以后可以再找:)

我在升级android sdk和eclipse插件后遇到了这个问题。没有升级不受惩罚!

我的问题与库项目有关,我的应用程序引用标准java项目和android库项目。我注意到Java Build Path设置在Source列表中包含了android库项目src和res文件夹(为每个在Source中提到bin的人投票,src和res也是一个问题)。

所以解决方案是:

在source列表和project列表的Java Build Path部分中删除所有引用的Android库源代码和项目引用 确保项目列表中列出了纯java依赖项,并在Order和Export选项卡中勾选,以便类包含在apk中 确保所有Android库依赖都列在项目属性的Android部分,在选中SDK版本下面的库部分。

从其他解决方案中拼凑出所有这些解决方案需要很长时间!唷!