Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex in Android Studio 3.0 [closed]

This is my app level gradle file:

    apply plugin: 'com.android.application'  android {     compileSdkVersion 26     buildToolsVersion '27.0.0'     useLibrary 'org.apache.http.legacy'     defaultConfig {         multiDexEnabled true         applicationId 'com.example.test'         minSdkVersion 16         targetSdkVersion 26         versionCode 1         versionName "1.0"         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"     }      compileOptions {         sourceCompatibility JavaVersion.VERSION_1_8         targetCompatibility JavaVersion.VERSION_1_8     }      productFlavors {     }     dexOptions {         incremental true     } }  dependencies {     compile 'com.google.android.gms:play-services:10.0.1'     compile 'com.android.support:appcompat-v7:26.+'     compile 'com.android.support:multidex:1.0.1'     compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha7'     compile 'commons-io:commons-io:1.3.2'     compile 'com.mcxiaoke.volley:library:1.0.19'     compile 'com.facebook.stetho:stetho:1.5.0'     compile 'com.github.PhilJay:MPAndroidChart:v3.0.2' } 

The complete error I get when compiling the project is:

Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.

java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

The complete error is as follows:

    Executing tasks: [:app:assembleDebug]  AGPBI: {"kind":"warning","text":"The `android.dexOptions.incremental` property is deprecated and it has no effect on the build process.","sources":[{},{}]} Configuration 'compile' in project ':app' is deprecated. Use 'implementation' instead. :app:buildInfoDebugLoader :app:preBuild UP-TO-DATE :app:preDebugBuild UP-TO-DATE :app:compileDebugAidl UP-TO-DATE :app:compileDebugRenderscript UP-TO-DATE :app:checkDebugManifest UP-TO-DATE :app:generateDebugBuildConfig UP-TO-DATE :app:prepareLintJar UP-TO-DATE :app:generateDebugResValues UP-TO-DATE :app:generateDebugResources UP-TO-DATE :app:mergeDebugResources UP-TO-DATE :app:createDebugCompatibleScreenManifests UP-TO-DATE :app:processDebugManifest UP-TO-DATE :app:splitsDiscoveryTaskDebug UP-TO-DATE :app:processDebugResources UP-TO-DATE :app:generateDebugSources :app:javaPreCompileDebug UP-TO-DATE :app:compileDebugJavaWithJavac UP-TO-DATE :app:mergeDebugShaders UP-TO-DATE :app:compileDebugShaders UP-TO-DATE :app:generateDebugAssets UP-TO-DATE :app:mergeDebugAssets UP-TO-DATE :app:packageInstantRunResourcesDebug UP-TO-DATE :app:checkManifestChangesDebug :app:extractTryWithResourcesSupportJarDebug UP-TO-DATE :app:transformClassesWithStackFramesFixerForDebug UP-TO-DATE :app:transformClassesWithDesugarForDebug UP-TO-DATE :app:transformClassesWithExtractJarsForDebug UP-TO-DATE :app:transformClassesWithInstantRunVerifierForDebug UP-TO-DATE :app:transformClassesWithDependencyCheckerForDebug UP-TO-DATE :app:compileDebugNdk NO-SOURCE :app:mergeDebugJniLibFolders UP-TO-DATE :app:transformNativeLibsWithMergeJniLibsForDebug UP-TO-DATE :app:processDebugJavaRes NO-SOURCE :app:transformResourcesWithMergeJavaResForDebug UP-TO-DATE :app:transformNativeLibsAndResourcesWithJavaResourcesVerifierForDebug UP-TO-DATE :app:transformClassesWithInstantRunForDebug UP-TO-DATE :app:transformClassesEnhancedWithInstantReloadDexForDebug UP-TO-DATE :app:incrementalDebugTasks UP-TO-DATE :app:preColdswapDebug :app:fastDeployDebugExtractor UP-TO-DATE :app:generateDebugInstantRunAppInfo UP-TO-DATE :app:transformClassesWithInstantRunSlicerForDebug UP-TO-DATE :app:transformClassesWithDexBuilderForDebug UP-TO-DATE :app:transformDexArchiveWithExternalLibsDexMergerForDebug FAILED :app:buildInfoGeneratorDebug  FAILURE: Build failed with an exception.  * What went wrong: Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'. > java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex  * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.  * Get more help at https://help.gradle.org  BUILD FAILED in 2s  39 actionable tasks: 5 executed, 34 up-to-date 
like image 605
kumail Avatar asked Nov 08 '17 19:11

kumail


2 Answers

Enable Multidex through build.gradle of your app module

multiDexEnabled true 

Same as below -

android {     compileSdkVersion 27     defaultConfig {         applicationId "com.xx.xxx"         minSdkVersion 15         targetSdkVersion 27         versionCode 1         versionName "1.0"         multiDexEnabled true //Add this         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"     }     buildTypes {         release {             shrinkResources true             minifyEnabled true             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'         }     } } 

Then follow below steps -

  1. From the Build menu -> press the Clean Project button.
  2. When task completed, press the Rebuild Project button from the Build menu.
  3. From menu File -> Invalidate cashes / Restart

compile is now deprecated so it's better to use implementation or api

like image 200
Abhishek Aryan Avatar answered Oct 19 '22 21:10

Abhishek Aryan


I am using Android Studio 3.0 and was facing the same problem. I add this to my gradle:

multiDexEnabled true 

And it worked!

Example

android {     compileSdkVersion 27     buildToolsVersion '27.0.1'     defaultConfig {         applicationId "com.xx.xxx"         minSdkVersion 15         targetSdkVersion 27         versionCode 1         versionName "1.0"         multiDexEnabled true //Add this         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"     }     buildTypes {         release {             shrinkResources true             minifyEnabled true             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'         }     } } 

And clean the project.

like image 31
Rakesh Yadav Avatar answered Oct 19 '22 21:10

Rakesh Yadav