web-dev-qa-db-fra.com

Fichiers en double lors de la création du package APK app-debug-unaligned.apk

J'ai eu cette erreur Duplicate files during packaging of APK app-debug-unaligned.apk Lorsque j'ai mis 2 fichiers jar:

  • httpclient-4.3.5.jar

  • httpmime-4.3.5.jar

    dans le dossier libs après Sync with Gradle et Run.

Si le fichier jar de l'utilisateur 1 - httpmime-4.3.5.jar, Je n'obtiendrai pas cette erreur.

S'il vous plaît, aidez-moi à éviter cette erreur et vous pouvez toujours utiliser 2 fichiers jar ci-dessus également,

Merci,

p/s: j'utilise Android Studio version 0.8.6.

Error Detail

Erreur: fichiers en double lors de la mise en package de l'APK ...\app\build\outputs\apk\app-debug-unaligned.apk Chemin dans l'archive: META-INF/DEPENDENCIES Origine 1: ...\app\libs\httpclient-4.3 .5.jar Origin 2: ...\app\libs\httpmime-4.3.5.jar

build.gradle

Android {
compileSdkVersion 20
buildToolsVersion '20.0.0'
defaultConfig {
    applicationId 'com.app'
    minSdkVersion 9
    targetSdkVersion 20
    versionCode 1
    versionName '1.0'
}
buildTypes {
    release {
        runProguard false
        proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
    }
}
productFlavors {
}
packagingOptions {
    exclude 'META-INF/LICENSE.txt'
}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.Android.support:support-v4:20.0.0'
compile 'com.Android.support:appcompat-v7:20.0.0'
compile 'com.google.Android.gms:play-services:5.2.08'
compile 'com.viewpagerindicator:library:2.4.1@aar'
compile 'de.hdodenhof:circleimageview:1.2.0'
compile files('libs/httpmime-4.3.5.jar')
}

UPDATE J'ai changé de compile files('libs/httpmime-4.3.5.jar') pour utiliser Maven Link. J'ai de nouveau la même erreur après avoir mis 2 liens maven ensemble:

    compile 'org.Apache.httpcomponents:httpmime:4.4-alpha1'
compile 'org.Apache.httpcomponents:httpcore:4.4-alpha1'

Ceci est l'avertissement

Avertissement: Dependency org.Apache.httpcomponents: httpclient: 4.4-alpha1 est ignoré pour le débogage car il peut être en conflit avec la version interne fournie par Android. En cas de problème, veuillez le reconditionner avec jarjar pour changer les packages de classe

Avertissement: Dependency org.Apache.httpcomponents: httpclient: 4.4-alpha1 est ignoré pour la publication car il peut être en conflit avec la version interne fournie par Android. En cas de problème, veuillez le reconditionner avec jar pour changer les packages de classe

S'il vous plaît, aidez-moi à réparer.

SOULITION Je connais une bonne réponse maintenant en ajoutant ces lignes corrigera l'erreur Duplicate files:

packagingOptions {
    exclude 'META-INF/DEPENDENCIES.txt'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/notice.txt'
    exclude 'META-INF/license.txt'
    exclude 'META-INF/dependencies.txt'
    exclude 'META-INF/LGPL2.1'
}
49
Huy Tower

Vous pouvez remplacer compile files('libs/httpmime-4.3.5.jar') par cette compilation 'org.Apache.httpcomponents:httpmime:4.3.5'.

Vous dupliquez également les dépendances compile fileTree(include: ['*.jar'], dir: 'libs') inclut déjà compile files('libs/httpmime-4.3.5.jar')

10
hoomi

mettez à jour votre build.gradle et ajoutez les lignes suivantes

Android{
    .
    .
    .
    packagingOptions {
        exclude 'META-INF/license.txt'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/NOTICE'
    }
}

cela corrigera cette erreur. J'ai eu la même erreur, ce faisant, il l'a corrigé.

8
Gaurav Sharma

J'ai mis à jour Gradle maintenant ça marche

packagingOptions {exclure 'META-INF/DEPENDANCES' exclure 'META-INF/LICENSE' exclure 'META-INF/LICENSE.txt' exclure 'META-INF/NOTICE.txt'}

0
Jyoti Prakash Rai

Veuillez le mettre à jour dans votre fichier build.gradle.

    packagingOptions { 
     exclude 'META-INF/LICENSE.txt' 
     exclude 'META-INF/NOTICE.txt' 
 }
0
Sadh