intellij IDEA多个dex文件错误

时间:2015-12-10 17:40:57

标签: android intellij-idea multiple-definition-error

我在Windows 10上安装了IDEA 15.0.2,并安装了Java 1.8。 android sdk API是版本19。

我的项目中有两个模块:

 project
    +---plugin-unity
    +---unity-ads
       +--- libs/unityads.jar

模块unity-ads在libs /文件夹中有一个unityads.jar。我使模块统一 - 广告依赖于unityads.jar和模块插件 - 统一取决于模块统一 - 广告

当我制作项目时,会出现以下错误:

  

错误:Android Dex:[plugin-unity]无法执行DX   错误:Android Dex:[plugin-unity] com.android.dex.DexException:多个dex文件定义Lcom / unity3d / ads / android / BuildConfig;   错误:Android Dex:[plugin-unity]在com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:579)   错误:Android Dex:[plugin-unity]在com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:535)   错误:Android Dex:[plugin-unity]在com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:517)   错误:Android Dex:[plugin-unity]在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:164)   错误:Android Dex:[plugin-unity]在com.android.dx.merge.DexMerger.merge(DexMerger.java:188)   错误:Android Dex:[plugin-unity]在com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:504)

请问Intellij IDEA有什么问题?我多次遇到这些问题。

感谢您的帮助。

编辑:

The solution:
    Because the module unity-ads has the same package name 
    com.unity3d.ads.android that exists in libs/unityads.jar too.
    The IDEA will automatic produce the BuildConfig that conflicts with that in libs/unityads.jar.
    Therefore, I delete the BuildConfig from the libs/unityads.jar, and then every thing is ok.

1 个答案:

答案 0 :(得分:1)

问题是您正在尝试从不同的jar文件中添加相同的类。尝试找出jar文件之间重叠的类,并从构建中删除它。