Messages Gradle build:
Erreur: l'exécution a échoué pour la tâche ': app: transformDexArchiveWithExternalLibsDexMergerForDebug'.
Java.lang.RuntimeException: com.Android.builder.dexing.DexArchiveMergerException: impossible de fusionner dex
Voici les fichiers de construction gradle:
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 26
defaultConfig {
minSdkVersion 26
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.Android.support:appcompat-v7:26.1.0'
implementation 'com.Android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.Android.support.test:runner:1.0.1'
androidTestImplementation 'com.Android.support.test.espresso:espresso
core:3.0.1'
implementation files('libs/bsh-core-2.0b4.jar')
implementation files('libs/Selenium-Java-2.3.0.jar')
implementation files('libs/Selenium-remote-driver-3.0.0.jar')
// https://mvnrepository.com/artifact/io.appium/Java-client
implementation group: 'io.appium', name: 'Java-client', version: '5.0.4'
}
Cette erreur est générique, peut être causée par de nombreuses choses
Java.lang.RuntimeException: com.Android.builder.dexing.DexArchiveMergerException: impossible de fusionner dex
Tout d'abord, vous devez savoir quelle erreur vous avez. Vous avez donc deux choix:
Ensuite, vous devez aller dans la partie où dit Cause par (Last of then car u peut avoir plus d'une erreur).
Si tu as:
Causée par: com.Android.dex.DexIndexOverflowException: l'ID de méthode n'est pas dans [0, 0xffff]: 65536
Ensuite, vous devez mettre cela, comme les commentaires précédents, mais si votre mindSdkVersion> = 21
Android {
defaultConfig
{
multiDexEnabled true
}
}
Si votre minSdkVersion <21, vous devez également mettre ceci
compile 'com.Android.support:multidex:1.0.3'
Plus d'infos ici
Dans mon cas, le problème était lié à des packages en double. J'ai utilisé un lien natif de réagir et l'application n'a pas reconnu que les packages sont liés, il en a donc fait des doublons.
Des packages en double ont été générés dans MainApplication.Java - importations et initialisation de classe.
Vérifiez également settings.gradle et build.gradle/app - il peut y avoir des packages en double qui briseront également votre application.
Essayez ceci sur votre fichier build.gradle(Module: app)
:
Android {
defaultConfig
{
...
multiDexEnabled true
}
}