【问题标题】:Android Studio Error:Execution failed for task ':flypandroid:transformClassesWithJarMergingForDebug'Android Studio 错误:任务“:flypandroid:transformClassesWithJarMergingForDebug”执行失败
【发布时间】:2016-05-06 17:17:37
【问题描述】:

升级到 Studio 2.1 并针对 API 23 构建后出现此错误:

错误:任务 ':flypandroid:transformClassesWithJarMergingForDebug' 执行失败。 > com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:android/support/annotation/NonNull.class

我试过了:

构建->清理

清理干净

 configurations {
    all*.exclude group: 'com.android.support', module: 'support-v4'
    all*.exclude group: 'com.google.android.gms', module: 'play-services'
    all*.exclude group: 'com.android.annotation'
}

没有任何效果。

查看库中的所有 jar,只有 android-support-v13.jar 具有 NonNull 类。

这是我的依赖列表:

dependencies {
compile project(':newQuickAction')
compile project(':emojicon')
compile project(':newQuickAction')
compile fileTree(include: ['*.jar'], dir: 'libs')
compile files('libs/android-viewbadger.jar')
compile files('libs/apache-mime4j-core-0.7.2.jar')
compile files('libs/aternity_sdk-7.2.jar')
compile files('libs/commons-lang-2.5.jar')
compile files('libs/commons-net-ftp-2.0.jar')
androidTestCompile files('libs/crittercism_v4_5_4_sdkonly.jar')
compile files('libs/emojitextview.jar')
compile files('libs/flypsi-0.0.1.jar')
compile files('libs/google-play-services.jar')
compile files('libs/httpmime-4.2.6.jar')
compile files('libs/libphonenumber-5.2.jar')
compile files('libs/localytics.jar')
compile files('libs/prettytime.jar')
compile files('libs/Pubnub-Android-3.7.4.jar')
compile files('libs/PubnubCrypto.jar')
compile('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') {
    transitive = true;
}
compile fileTree(include: 'Parse-*.jar', dir: 'libs')
compile files('libs/tapjoyconnectlibrary.jar')
compile files('libs/flyp-domain-1.12.0.jar')
compile 'com.google.code.gson:gson:2.4'
compile 'com.google.android.gms:play-services:8.4.0'
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.android.support:design:23.3.0'
compile 'com.android.support:cardview-v7:23.3.0'
compile 'com.android.support:recyclerview-v7:23.3.0'
compile 'com.google.android.gms:play-services-ads:8.4.0'
compile 'com.google.android.gms:play-services-identity:8.4.0'
compile 'com.google.android.gms:play-services-gcm:8.4.0'
compile 'org.apache.httpcomponents:httpcore:4.2.1'
compile files('libs/httpclient-4.5.2.jar')
compile files('libs/flyp-util-1.1.0.jar')
compile files('libs/android-support-v13.jar')

}

【问题讨论】:

    标签: android android-studio android-6.0-marshmallow


    【解决方案1】:

    好的,经过一段时间的努力,我能够找到针对我的情况(不是一般情况)的解决方案。

    问题在于这个 jar:libs/android-support-v13.jar,特别是类 android.support.annotation.NonNull(请注意,该 jar 包含注释包以及 v4 和 v13 包)。似乎 gradle 进程的注解包有问题,我想把这个依赖分离出来。

    所以,我从 libs 目录中删除了 android-support-v13.jar,而是使用了库依赖项:

    compile 'com.android.support:support-v13:23.3.0'
    

    然后,为了包含 v4 支持,我尝试包含依赖项:

    compile 'com.android.support:support-v4:23.3.0'
    

    但是,这不起作用!由于缺少本应找到的类、包等,因此无法构建代码。

    相反,我手动将 android-support-v4.jar 从 android sdk 复制到 libs 目录中并指定:

    compile files('libs/android-support-v4.jar')
    

    它奏效了。我的最终依赖项列表如下所示:

    dependencies {
    compile project(':newQuickAction')
    compile project(':emojicon')
    compile project(':newQuickAction')
    //compile fileTree(include: ['*.jar'], dir: 'libs')
    compile files('libs/android-viewbadger.jar')
    compile files('libs/apache-mime4j-core-0.7.2.jar')
    compile files('libs/aternity_sdk-7.2.jar')
    compile files('libs/commons-lang-2.5.jar')
    compile files('libs/commons-net-ftp-2.0.jar')
    androidTestCompile files('libs/crittercism_v4_5_4_sdkonly.jar')
    compile files('libs/emojitextview.jar')
    compile files('libs/flypsi-0.0.1.jar')
    compile files('libs/google-play-services.jar')
    compile files('libs/httpmime-4.2.6.jar')
    compile files('libs/libphonenumber-5.2.jar')
    compile files('libs/localytics.jar')
    compile files('libs/prettytime.jar')
    compile files('libs/Pubnub-Android-3.7.4.jar')
    compile files('libs/PubnubCrypto.jar')
    compile('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') {
        transitive = true;
    }
    compile fileTree(include: 'Parse-*.jar', dir: 'libs')
    compile files('libs/tapjoyconnectlibrary.jar')
    compile files('libs/flyp-domain-1.12.0.jar')
    compile 'com.google.code.gson:gson:2.4'
    compile 'com.google.android.gms:play-services:8.4.0'
    compile 'com.android.support:appcompat-v7:23.3.0'
    compile 'com.android.support:design:23.3.0'
    compile 'com.android.support:cardview-v7:23.3.0'
    compile 'com.android.support:recyclerview-v7:23.3.0'
    compile 'com.google.android.gms:play-services:8.4.0'
    compile 'org.apache.httpcomponents:httpcore:4.2.1'
    compile files('libs/httpclient-4.5.2.jar')
    compile files('libs/facebook.jar')
    compile files('libs/activation.jar')
    compile files('libs/mail.jar')
    compile files('libs/bolts-android-1.2.0.jar')
    compile 'com.android.support:support-v13:23.3.0'
    compile files('libs/android-support-v4.jar')
    

    }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-09
      • 2018-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-25
      • 1970-01-01
      相关资源
      最近更新 更多