Eclipse,Android:意外无法执行dex:多个dex文件定义

时间:2014-09-28 20:55:16

标签: android eclipse build dalvik dex

问题: 我不能建立我的项目。当我尝试以下标志显示在控制台中时:

[2014-09-28 23:49:30 - Dex Loader] Unable to execute dex: Multiple dex files define Landroid/support/annotation/AnimRes;
[2014-09-28 23:49:30 - Shop] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Landroid/support/annotation/AnimRes;

我为这个问题找不到时间寻找解决方案,但没有结果..我试图清理项目,删除bin文件夹等但没有任何效果..

请帮助,我不知道该怎么做..

6 个答案:

答案 0 :(得分:8)

从libs文件夹中删除android-support-annotations.jar。由于这些注释已包含在最新版本的android-support-v4.jar文件中。

答案 1 :(得分:5)

我无法修复它所以我最终在不同的工作区中创建了新项目并将所有代码复制到新项目中。这不是最聪明的事情,但我能做些什么......

答案 2 :(得分:2)

我在这个问题上也失去了几个小时,但我认为我找到了一个解决方案,至少对我而言。 Andoid Studio告诉我,我有“多个dex文件定义Landroid / support / annotation / AnimRes;”但他说还有一个文件调用inputList.txt有一个bug。 好吧,我在目录树中找到了这个文件,我在 app / build / intermediates / tmp / dex / debug 文件夹中找到了。该文件是一个简单的文本文件,每个依赖项都有一行作为支持注释或带有绝对路径的androidplot-core。

我看到几行重复,我想如果我删除我解决问题,但它没有用。

然后我搜索了这条路线,所有.jar都在同一个地方: app / build / intermediates / pre-dexed / debug / 文件夹,我看到重复的.jar文件,我删除了这个,在我去文件后,我也删除了重复的行。

然后我运行我的项目,错误消失了,问题解决了。

问题是:.jar文件在该文件夹中重复。

容易!

答案 3 :(得分:1)

我有同样的问题。我认为这是因为当我使用tortoise SVN更新项目存储库时bin文件夹内容中有修改。 我删除了bin,Eclipse生成了新的但问题仍然存在。但是我通过删除android依赖库解决了问题。这里的步骤:

选择项目 - >右键单击 - >选择构建路径 - >配置构建路径 - >在“库”选项卡中,删除Android依赖项 - >确定。然后清理项目并再次运行。 :)

答案 4 :(得分:0)

删除包含android-support-v4.jar的库,然后将android-support-v4.jar直接添加到buid路径。顺便说一句,我使用Eclipse for IDE。

答案 5 :(得分:0)

正如控制台输出所说"多个dex文件定义"。

在bin / dexedLibs下,有许多同名但不同版本的罐子。

我通过删除所有lib文件夹下的所有重复支持v4 jar来解决它,并使我的主项目引用到库项目中的单个项目,然后清理项目以重建。它现在作为一个魅力。