【发布时间】:2015-12-10 17:40:57
【问题描述】:
我在 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。我使模块 unity-ads 依赖于 unityads.jar 和模块 plugin-unity 依赖于模块 unity-ads
当我制作项目时,会出现以下错误:
错误:Android Dex:[plugin-unity] 无法执行 DX 错误:Android Dex: [plugin-unity] com.android.dex.DexException: 多个 dex 文件定义 Lcom/unity3d/ads/android/BuildConfig; 错误:Android Dex: [plugin-unity] at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:579) 错误:Android Dex: [plugin-unity] at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:535) 错误:Android Dex: [plugin-unity] at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:517) 错误:Android Dex: [plugin-unity] at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:164) 错误:Android Dex: [plugin-unity] at com.android.dx.merge.DexMerger.merge(DexMerger.java:188) 错误:Android Dex: [plugin-unity] at 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.
【问题讨论】:
标签: android intellij-idea multiple-definition-error