我确实知道很多dex问题以前已经被报告过,但是在我的情况下,所有解决方案似乎都不起作用。

安慰:

    Unable to execute dex: Multiple dex files define Lbolts/AggregateException;
    Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lbolts/AggregateException;

流行的解决方案之一是从buildpath取消标记“Android私有(private)库”容器。我不能这样做,因为我需要在该容器中添加一些库。

另一个解决方案是取消标记任何以.jar形式显式添加的重复库。我没有这样的图书馆。

在我的情况下,重复的库是:android-support-v7-appcompat.jar我在以下两个容器中有它(直接从sdk文件夹引用):

1.)Android私有(private)库

2.)Android依赖项

问题是我无法完全取消选中这两个容器中的任何一个,因为它们都包含其他必要的库。但我也无法仅从两个容器中删除此重复的.jar文件。

编辑:
N.B.当我将android-support-v7-appcompat library_project添加到我的项目时,它同时进入两个容器。必须有某种方法可以只进入其中一种。

有人可以帮我怎么做吗?

最佳答案

已解决
bolts-android库是这里的真正麻烦。它有两个不同的版本导致冲突。 FacebookSDK库带来bolts-android-1.1.2,而android-support-v7-appcompat带来bolts-android-1.1.4

我在FacebookSDK库项目中未标记Android Private Libraries容器,该项目包含bolts-android-1.1.2。结果,我的项目现在只有一个版本bolts-android-1.1.4,可以解决冲突。现在运行良好。

而且,事实证明,重复的android-support-v7-appcompat条目不是问题。

07-24 09:49
查看更多