Android Studio:多个dex文件定义Lcom/sun/activation/registries/LineTokenizer;

Android Studio:多个dex文件定义Lcom/sun/activation/registries/LineTokenizer;,android,gradle,android-studio,Android,Gradle,Android Studio,在尝试构建我的项目时收到此异常。我四处寻找答案,但大多数情况似乎与我的不同 其他解决方案包括清除临时文件或进行梯度清理。这确实暂时解决了这个问题,但在一些构建之后它会再次出现。发生此问题的另一种方式是,项目包含库的多个副本。我已经搜索了我的项目,只有一个activation.jar实例在我的libs目录中。大多数其他解决方案似乎涉及在Eclipse中更改构建路径,但我的问题发生在Android Studio 0.5.8上。我正在使用Java1.7 渐变控制台 意外的顶级异常:com.androi

在尝试构建我的项目时收到此异常。我四处寻找答案,但大多数情况似乎与我的不同


其他解决方案包括清除临时文件或进行梯度清理。这确实暂时解决了这个问题,但在一些构建之后它会再次出现。发生此问题的另一种方式是,项目包含库的多个副本。我已经搜索了我的项目,只有一个activation.jar实例在我的libs目录中。大多数其他解决方案似乎涉及在Eclipse中更改构建路径,但我的问题发生在Android Studio 0.5.8上。我正在使用Java1.7

渐变控制台

意外的顶级异常:com.android.dex.DexException: 多个dex文件定义 Lcom/sun/activation/registries/LineTokenizer; 在com.android.dx.merge.dexmmerge.readSortableTypes上(dexmmerge.java:594) 在com.android.dx.merge.dexmerge.getSortedTypes上(dexmerge.java:552) 位于com.android.dx.merge.dexmerge.mergeClassDefs(dexmerge.java:533) 位于com.android.dx.merge.dexmmerge.mergeDexes(dexmmerge.java:170) 位于com.android.dx.merge.dexmmerge.merge(dexmmerge.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目录中的库:

  • 激活.jar
  • additionnal.jar
  • androidplot-core-0.5.1.jar
  • annotations.jar
  • DatawindAdsSdk-2.0.jar
  • jpct_ae.jar
  • jsr305-1.3.9.jar
  • libGoogleAnalyticsV2.jar
  • mail.jar
  • twitter4j-core-3.0.5.jar
依赖项:注意-“: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.10.2()上的Android Gradle插件的增量索引选项存在缺陷。从my build.gradle文件中删除以下内容解决了此问题:

android {
    dexOptions {
        incremental true
    }
}

原来这是由于版本0.10.2()上的Android Gradle插件的增量索引选项存在缺陷。从my build.gradle文件中删除以下内容解决了此问题:

android {
    dexOptions {
        incremental true
    }
}

原来这是由于版本0.10.2()上的Android Gradle插件的增量索引选项存在缺陷。从my build.gradle文件中删除以下内容解决了此问题:

android {
    dexOptions {
        incremental true
    }
}

原来这是由于版本0.10.2()上的Android Gradle插件的增量索引选项存在缺陷。从my build.gradle文件中删除以下内容解决了此问题:

android {
    dexOptions {
        incremental true
    }
}

正如@Marepork anwered所说,gradle中存在一个尚未修复的bug


如果您仍然希望使用增量构建,您可以始终使用构建变体,而对于debug,您可以使用multidex,对于发布的proguard,正如@Marepork anwered所示,gradle中存在一个尚未修复的bug


如果您仍然希望使用增量构建,您可以始终使用构建变体,而对于debug,您可以使用multidex,对于发布的proguard,正如@Marepork anwered所示,gradle中存在一个尚未修复的bug


如果您仍然希望使用增量构建,您可以始终使用构建变体,而对于debug,您可以使用multidex,对于发布的proguard,正如@Marepork anwered所示,gradle中存在一个尚未修复的bug


如果您仍然想使用增量构建,您可以始终使用构建变体和fordebug使用multidex,对于发布版a proguard

“我已经搜索了我的项目,只有一个activation.jar实例在我的libs目录中”——您还有什么其他依赖项?例如,您是否引用了Maven Central中的任何jar或AAR?@Commonware我已经添加了依赖项和libs内容。“我已经搜索了我的项目,只有一个activation.jar实例在我的libs目录中”——您还有哪些其他依赖项?例如,您是否引用了Maven Central中的任何jar或AAR?@Commonware我已经添加了依赖项和libs内容。“我已经搜索了我的项目,只有一个activation.jar实例在我的libs目录中”——您还有哪些其他依赖项?例如,您是否引用了Maven Central中的任何jar或AAR?@Commonware我已经添加了依赖项和libs内容。“我已经搜索了我的项目,只有一个activation.jar实例在我的libs目录中”——您还有哪些其他依赖项?例如,您是否引用了Maven Central的JAR或AAR?@Commonware我添加了依赖项和libs内容。此解决方案似乎使assembleDebug和assembleRelease非常缓慢。我建议在gradle文件中使用
排除
。见@DeividiCavarzan谢谢!这个解决方案似乎使AssembleBug和assembleRelease非常慢。我建议在gradle文件中使用
排除
。见@DeividiCavarzan谢谢!这个解决方案似乎使AssembleBug和assembleRelease非常慢。我建议在gradle文件中使用
排除
。见@DeividiCavarzan谢谢!这个解决方案似乎使AssembleBug和assembleRelease非常慢。我建议在gradle文件中使用
排除
。见@DeividiCavarzan谢谢!