Android TransformException:在CoordinatorLayout.class中的ZipException重复条目

时间:2018-03-01 10:14:34

标签: android exception android-gradle build.gradle

我有一个奇怪的例外,在我为Android项目添加了一些资源之后突然出现了。该应用程序完全停止构建并抛出以下异常:

Error:Execution failed for task 
':app:transformClassesWithJarMergingForEliteDebug'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/design/widget/CoordinatorLayout$1.class

我之前遇到过同样的异常,但是我有一个不同的类,我立即修复它,但现在的事情是我不知道副本在哪里,我找不到任何人在SO上有相同的重复异常

我尝试从所有其他库中排除support-v4,我的项目中也启用了multidex但似乎没有解决问题,所以我想你们中的一些人可能对此有一些见解以及为什么它突然发生了我的build.gradle文件而没有改变任何内容,因为它之前工作得很好。

我的build.gradle如下:

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }
    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
apply plugin: 'com.neenbedankt.android-apt'
apply plugin: 'realm-android'

android {
    compileSdkVersion 27
    buildToolsVersion "27.0.3"

    defaultConfig {
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 27
        versionName "2.2.4"

        multiDexEnabled true

    }

    configurations {
        all*.exclude group: 'com.android.support', module: 'support-v4'
    }

    buildTypes {
        release {
            minifyEnabled false
//            proguardFiles 'proguard.cfg'
        }
    }

    useLibrary 'org.apache.http.legacy'
    packagingOptions {
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/DEPENDENCIES'
    }
}

repositories {
    maven {
        url "https://jitpack.io"
    }
    maven { url 'https://maven.fabric.io/public' }
    mavenCentral()
}

dependencies {
    compile project(':FORTSDKv1.4.1')
    compile files('libs/nineoldandroids-2.4.0.jar')
    compile files('libs/gcm.jar')
    compile files('libs/httpclient-4.3.4.jar')
    compile files('libs/httpmime-4.2.5.jar')
    compile files('libs/HockeySDK-3.0.2.jar')
    compile project(':library-2.4.1')
    // Required for geotagging
    compile('com.crashlytics.sdk.android:crashlytics:2.6.8@aar') {
        transitive = true
    }
    compile('com.code-troopers.betterpickers:library:3.1.0') {
        exclude group: 'com.nineoldandroids', module: 'library'
    }
    compile 'com.android.support:support-v4:27.0.2'
    compile ('com.android.support:appcompat-v7:27.0.2') {
        exclude module: 'support-v4'
    }
    compile ('com.android.support:cardview-v7:27.0.2')
    {
        exclude group: 'com.android.support', module: 'support-v4'
    }
    compile 'com.android.support:customtabs:27.0.2'
    compile 'com.android.support:multidex:1.0.1'
    compile 'com.googlecode.libphonenumber:libphonenumber:5.5'
    compile 'org.parceler:parceler-api:1.1.5'
    compile ('com.google.android.gms:play-services-analytics:11.8.0') {
        exclude group: 'com.android.support', module: 'support-v4'
    }
    compile 'com.google.android.gms:play-services-maps:11.8.0'
    compile 'com.google.android.gms:play-services-auth:11.8.0'
    compile 'com.google.android.gms:play-services-gcm:11.8.0'
    compile 'com.google.android.gms:play-services-analytics:11.8.0'
    compile 'com.google.android.gms:play-services-location:11.8.0'
    compile 'com.github.hackware1993:MagicIndicator:1.5.0'
    compile 'com.roomorama:caldroid:2.3.1'
    compile 'com.google.code.gson:gson:2.8.1'
    compile 'com.leocardz:aelv:1.1@aar'
    compile 'com.flaviofaria:kenburnsview:1.0.7'
    compile('com.jakewharton:butterknife:8.4.0') {
        exclude module: 'support-compat'
        exclude group: 'com.google.android', module: 'support-v4'
    }
    compile 'com.pixplicity.easyprefs:library:1.8.1@aar'
    compile 'de.hdodenhof:circleimageview:2.2.0'
    compile 'com.github.jrvansuita:IconHandler:+'
    compile 'com.github.mancj:SlideUp-Android:2.2.5'
    compile 'com.afollestad:sectioned-recyclerview:0.5.0'
    compile 'com.github.bumptech.glide:glide:3.7.0'
    compile 'com.facebook.stetho:stetho:1.4.1'
    compile 'com.facebook.stetho:stetho-okhttp3:1.4.1'
    compile 'com.uphyca:stetho_realm:2.0.0'
    compile 'org.greenrobot:eventbus:3.1.1'
    compile 'com.birbit:android-priority-jobqueue:2.0.1'
    compile 'com.squareup.retrofit2:retrofit:2.3.0'
    compile 'com.squareup.retrofit2:converter-gson:2.1.0'
    compile 'com.squareup.retrofit2:converter-scalars:2.1.0'
    compile 'com.valdesekamdem.library:md-toast:0.8.0'
    compile 'com.facebook.android:account-kit-sdk:4.+'
    compile 'com.facebook.android:facebook-android-sdk:4.17.0'
    compile 'com.wang.avi:library:2.1.3@aar'
    compile 'com.afollestad.material-dialogs:core:0.9.6.0'
    compile 'com.onesignal:OneSignal:3.6.5'
    compile 'com.kbeanie:image-chooser-library:1.6.0@aar'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.scalified:fab:1.1.3'
    compile 'com.github.traex.expandablelayout:library:1.2.2'
    compile 'com.github.markomilos:paginate:0.5.1'
    compile 'com.wdullaer:materialdatetimepicker:3.3.0'
    compile 'com.github.tamir7.contacts:contacts:1.1.7'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'net.yslibrary.keyboardvisibilityevent:keyboardvisibilityevent:2.1.0'
    compile 'com.github.livechat:chat-window-android:v2.0.0'
    compile 'com.uber.sdk:rides-android:0.6.1'
    compile 'link.fls:swipestack:0.3.0'
    compile 'com.github.PhilJay:MPAndroidChart:v3.0.2'
    compile 'com.instabug.library:instabug:4.3.3'
    compile 'com.victor:lib:1.0.1'
    compile 'com.shamanland:fonticon:0.1.8'
    compile 'jp.wasabeef:recyclerview-animators:2.2.7'
    compile 'com.squareup.okhttp3:logging-interceptor:3.8.0'
    compile 'com.github.vihtarb:tooltip:0.1.9'
    compile 'com.daasuu:CountAnimationTextView:0.1.1'
    compile 'com.theartofdev.edmodo:android-image-cropper:2.6.+'
    compile('com.android.billingclient:billing:1.0') {
        exclude module: 'support-compat'
        exclude group: 'com.google.android', module: 'support-v4'
    }
    compile('de.keyboardsurfer.android.widget:crouton:1.8.5@aar') {
        // exclusion is not necessary, but generally a good idea.
        exclude group: 'com.google.android', module: 'support-v4'
    }
    apt 'com.jakewharton:butterknife-compiler:8.8.1'
    apt 'org.parceler:parceler:1.1.5'
    compile 'com.google.guava:guava:19.0'
    compile 'org.bouncycastle:bcprov-jdk16:1.46'
}


apply plugin: 'com.google.gms.google-services'

非常感谢任何帮助。感谢。

1 个答案:

答案 0 :(得分:11)

我遇到了同样的错误,并且能够通过在我的gradle文件底部添加这个来构建我的项目

configurations.all {
    resolutionStrategy.eachDependency { DependencyResolveDetails details ->
        def requested = details.requested
        if (requested.group == 'com.android.support') {
            if (!requested.name.startsWith("multidex")) {
                details.useVersion '27.1.0'
            }
        }
    }
}

有关详细信息,请查看以下主题:https://stackoverflow.com/a/46963672/7308794