简体   繁体   English

intellij IDEA多个dex文件错误

[英]intellij IDEA multiple dex files error

I have IDEA 15.0.2 installed on windows 10, and have java 1.8 installed. 我在Windows 10上安装了IDEA 15.0.2,并安装了Java 1.8。 The android sdk API is version 19. android sdk API为版本19。

I have two modules in my project: 我的项目中有两个模块:

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

module unity-ads has a unityads.jar in libs/ folder. 模块unity-ads在libs /文件夹中有一个unityads.jar。 I make the the module unity-ads depends on unityads.jar and module plugin-unity depends on module unity-ads 我使模块unity-ads取决于unityads.jar和模块plugin-unity取决于模块unity-ads

When I make the project, then occurs the errors below: 当我制作项目时,然后发生以下错误:

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

What's the problem with the Intellij IDEA please? 请问Intellij IDEA有什么问题? I encountered these problems many times. 我多次遇到这些问题。

Thank you for your help. 谢谢您的帮助。

Edit: 编辑:

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.

The problem is that you are trying to add same class from different jar files. 问题是您试图从不同的jar文件添加相同的类。 Try to find which class is overlapping between the jar files and remove that from the build. 尝试查找jar文件之间重叠的类,然后将其从构建中删除。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM