在尝试构建项目时收到此异常。寻找答案,但大多数情况似乎与我的不同。
其他解决方案包括清除临时文件或进行gradle清理。这确实暂时解决了问题,但在几次构建之后它又重新出现。此问题的另一种出现方式是项目是否包含库的多个副本。我搜索了我的项目,只有一个activation.jar实例,它位于我的libs目录中。大多数其他解决方案似乎涉及更改Eclipse中的构建路径,但我的问题发生在Android Studio 0.5.8上。我使用的是Java 1.7。
Gradle Console
意外的顶级异常:com.android.dex.DexException: 多个dex文件定义 LCOM /阳光/激活/注册/ LineTokenizer; 在com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594) 在com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552) 在com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533) 在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170) 在com.android.dx.merge.DexMerger.merge(DexMerger.java:188) 在com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439) 在com.android.dx.command.dexer.Main.runMonoDex(Main.java:287) 在com.android.dx.command.dexer.Main.run(Main.java:230) 在com.android.dx.command.dexer.Main.main(Main.java:199) 在com.android.dx.command.Main.main(Main.java:103)
libs目录中的库:
依赖关系:注 - “:android-cropimage”在build.gradle中没有任何依赖关系
主要模块:
dependencies {
//Library Projects
compile project(':android-cropimage')
compile project(':facebook')
//Android SDK Libraries
//This library requires "Google Play Services" and "Google Repository" to be downloaded via SDK Manager.
compile 'com.google.android.gms:play-services:4.4.52'
//Third Party
compile fileTree(dir: 'libs', include: '*.jar')
compile 'com.github.chrisbanes.actionbarpulltorefresh:extra-abs:+'
compile 'com.jakewharton:butterknife:4.0.1'
compile 'com.j256.ormlite:ormlite-core:4.46'
compile 'com.j256.ormlite:ormlite-android:4.46'
compile 'net.hockeyapp.android:HockeySDK:3.0.1'
compile 'org.apache.httpcomponents:httpmime:4.2.5'
compile 'com.viewpagerindicator:library:2.4.1@aar'
compile 'com.squareup.picasso:picasso:2.2.0'
compile 'com.mcxiaoke.volley:library:1.0.+'
compile 'org.msgpack:msgpack:0.6.11'
}
Facebook模块:
dependencies {
compile 'com.android.support:support-v4:19.1.0'
}
答案 0 :(得分:3)
原来这是由于版本0.10.2(https://groups.google.com/forum/#!topic/adt-dev/6KbhReCE_fo)上的Android Gradle插件的增量dex选项出错。从我的build.gradle文件中删除以下内容解决了这个问题:
android {
dexOptions {
incremental true
}
}
答案 1 :(得分:0)
正如@Marepork所说,有一个没有修复的gradle错误
如果您仍想使用增量构建,您可以始终使用构建变体和fordebug使用multidex并发布proguard