88 votes

Android Studio 3.0 Execution a échoué pour la tâche: impossible de fusionner dex

android studio est se construire erreur lors de la construire avec l'exécution suivantes:

Erreur:échec de l'Exécution de la tâche:app:transformDexArchiveWithExternalLibsdexmergerfordebug'. java.lang.RuntimeException: java.lang.RuntimeException: com.android.générateur de rapports.dexing.DexArchiveMergerException: Impossible de fusionner dex"

Mon application:construire.gradle fichier:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 26
    buildToolsVersion '26.0.2'
    defaultConfig {
        applicationId "com.pdroid.foodieschoice"
        minSdkVersion 16
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.firebaseui:firebase-ui-auth:2.3.0'

    testCompile 'junit:junit:4.12'
}
configurations.all {
    resolutionStrategy {
        force 'com.android.support:appcompat-v7:26.0.1'
        force 'com.android.support:support-compat:26.0.1'
        force 'com.android.support:support-core-ui:26.0.1'
        force 'com.android.support:support-annotations:26.0.1'
        force 'com.android.support:recyclerview-v7:26.0.1'
    }
}

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

toutes les solutions

Edit: je l'ai fait avec de l'échantillon par le biais de firebase github site et résolu

67voto

sulaiman Points 181

Pour les projets basés sur Cordova, exécutez cordova clean android avant de reconstruire à nouveau, comme suggéré par @mkimmet .

59voto

Cette erreur se produit lorsque vous ajoutez une bibliothèque externe qui peuvent ne pas être compatibles avec votre compileSdkVersion .

Soyez prudent lorsque vous ajoutez un external library.

J'ai passé 2 jours sur ce problème et, enfin, elle a obtenu résolu en suivant ces étapes.

  • Assurez-vous que tous vos bibliothèques de prise en charge sont les mêmes que compileSdkVersion de votre build.gradle(Module:app) dans mon cas, c'est - 26. enter image description here

  • Dans votre defaultconfig.ini.php type de catégorie multiDexEnabled vrai. C'est la partie importante. multiDexEnabled True image

  • Allez à Fichier | Paramètres | Construire, l'Exécution, le Déploiement | Instantanée Exécuter et essayez d'Activer/Désactiver l'Instant Exécuter à chaud... et cliquez sur ok Enable Instant Run to Hot swap... Image

  • Sync Votre projet.

  • Enfin, Allez à Construire | cliquez sur Projet de Reconstruction.

  • Remarque: le Projet de Reconstruction de la première nettoie, puis construit le projet.

51voto

Ishan Fernando Points 894

Essayez d'ajouter ceci en grade

     android {
      defaultConfig {
        multiDexEnabled true
        }
   }
 

29voto

Modesto Cabrera Points 51

Résolution:

Reportez-vous à ce lien: Comme il y a plusieurs options pour arrêter l'avertissement s'éteint en fonction de la minSdkVersion, il est fixé en dessous de 20:

 android {
     defaultConfig {
         ...
         minSdkVersion 15 
         targetSdkVersion 26
         multiDexEnabled true
     }
     ... }

 dependencies {   compile 'com.android.support:multidex:1.0.3' }

Si vous avez un minSdkVersion de plus de 20 dans votre construction.gradle jeu utilisez la commande suivante pour arrêter l'alerte:

  android {
      defaultConfig {
          ...
          minSdkVersion 21 
          targetSdkVersion 26
          multiDexEnabled true
      }
      ... }

Dépendances de mise à jour comme suit:

     dependencies {
        implementation 'com.android.support:multidex:1.0.3'
     }

De nouveau, la seule différence est que les mots clés dans les dépendances:

minSdkVersion en dessous de 20: utilisation de la compilation

minSdkVersion au-dessus de 20: utilisation de la mise en œuvre

  1. J'espère que cela a été utile, merci de upvote si il résolu votre problème, je vous Remercie pour votre temps.
  2. Aussi pour plus d'info, sur pourquoi cela se produit, veuillez lire le premier paragraphe dans le lien, il va vous expliquer complètement pourquoi? et que fait cet avertissement veux dire.

24voto

Anas Points 309

Essayez simplement de faire un "Build -> Clean Project". Cela a résolu le problème pour moi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X