6

Ho appena aggiornato la mia libreria di supporto da 23.0.0 a 23.1.0 e ora quando costruisco il progetto, I ottenere questo errore:java.util.zip.ZipException: voce duplicata: android/support/v7/graphics/drawable/DrawableUtils.class

Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'. 
> com.android.build.transform.api.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v7/graphics/drawable/DrawableUtils.class 

Qui è la mia app livello 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.google.gms.google-services' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23" 
    defaultConfig { 
     applicationId 'com.galleri5.android' 
     multiDexEnabled true 
     minSdkVersion 16 
     targetSdkVersion 23 
     versionCode 6 
     versionName "0.6" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 


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

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    compile 'com.android.support:appcompat-v7:23.1.0' 
    compile 'com.android.support:support-v4:23.1.0' 
    compile 'com.squareup.picasso:picasso:2.5.2' 
    compile 'com.android.support:design:23.1.0' 
    compile 'com.facebook.android:facebook-android-sdk:4.3.0' 
    compile 'com.etsy.android.grid:library:1.0.5' 
    compile 'com.squareup.okhttp:okhttp:2.4.0' 
    compile 'com.squareup.okhttp:okhttp-urlconnection:2.4.0' 
    compile 'com.android.support:recyclerview-v7:23.1.0' 
    compile 'com.android.support:cardview-v7:23.1.0' 
    compile 'com.squareup.retrofit:retrofit:1.9.0' 
    compile 'com.jakewharton:butterknife:7.0.1' 
    compile 'com.github.clans:fab:1.6.1' 
    compile 'uk.co.chrisjenx:calligraphy:2.1.0' 
    compile 'com.google.android.gms:play-services-analytics:8.1.0' 
    compile('com.crashlytics.sdk.android:crashlytics:[email protected]') { 
     transitive = true; 
    } 
} 

Cosa ottengo questo errore? Voglio usare l'ultima versione della libreria di supporto. Come posso risolvere questo problema? Ho letto il thread this SO e la soluzione non ha funzionato. Ha dato più errori nella mia base di codice. Inoltre, non sto usando JAR. Qualsiasi aiuto sarebbe molto apprezzato. Grazie.

+1

pulizia del progetto dovrebbe aiutare e impostare 'compileSdkVersion 23 buildToolsVersion "23.0.1"' –

+0

provato. Ottengo sempre lo stesso errore. –

+0

Nel terminale eseguito nella cartella del progetto root: ./gradlew clean http://stackoverflow.com/questions/33209631/errorexecution-failed-for-task-apptransformclasseswithjarmergingfordebug http://stackoverflow.com/questions/32968171/android- apptransformclasseswithjarmergingfordebug-failed-zipexception-dupli –

risposta

0

è necessario aggiungere il gruppo esclude: sul V7 sostegno come questo:

compile ('com.android.support:appcompat-v7:19.+') { 
    exclude group: 'org.apache.httpcomponents', module: 'httpclient' 
    exclude group: 'com.android.support' 
} 
8

Ho incontrato lo stesso problema nel mio progetto Reagire nativo Android, e questo è ciò che ha reso il lavoro per me:

cd android 

./gradlew clean