You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:运行App时遭遇transformDexArchiveWithExternalLibsDexMergerForDebug错误

求助:Android Dex合并失败问题

我在运行App的时候遇到了这个烦人的错误:

Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'。java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex error

我已经试过清理并重建项目、统一所有库版本这些常规操作了,但还是没能解决问题,有没有大佬能给点新的建议?

我的app模块build.gradle相关内容如下:

android {
    // 这里是我的android配置内容
    compileSdkVersion 30
    defaultConfig {
        applicationId "com.myapp.package"
        minSdkVersion 21
        targetSdkVersion 30
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    // 其他配置项...
}

dependencies {
    implementation 'androidx.appcompat:appcompat:1.3.0'
    implementation 'com.google.android.material:material:1.4.0'
    // 其他依赖库...
}

针对这个问题的可行解决方案

我整理了几个可能有效的方向,你可以逐一尝试:

  • 排查重复依赖:在终端运行./gradlew app:dependencies(Windows系统用gradlew.bat app:dependencies)生成依赖树,仔细查找有没有重复引入的库(比如同一个库的不同版本,或者被多个依赖间接引入的重复包),找到后在对应的依赖里用exclude group: 'xxx', module: 'xxx'排除重复部分。
  • 确保MultiDex配置正确:如果你的项目方法数超过65536,或者minSdkVersion低于21,一定要开启MultiDex:
    1. 在app模块的defaultConfig里添加multiDexEnabled true;
    2. 依赖对应的MultiDex库:AndroidX项目用implementation 'androidx.multidex:multidex:2.0.1',旧support库项目用implementation 'com.android.support:multidex:1.0.3';
    3. 自定义Application类继承MultiDexApplication,或者在现有Application的attachBaseContext方法里调用MultiDex.install(this)。
  • 彻底清理Gradle缓存:有时候缓存会导致奇怪的问题,你可以删除项目根目录下的.gradle文件夹,以及用户目录(比如Windows的C:\Users\你的用户名\.gradle,Mac的~/.gradle)里的缓存,然后重新同步项目。
  • 检查AndroidX与旧support库冲突:如果项目里同时存在AndroidX和旧的support库,很容易出现这类问题。可以用Android Studio的Refactor -> Migrate to AndroidX工具自动完成转换,确保所有依赖都统一用AndroidX版本。
  • 更新Gradle相关版本:尝试把项目的Gradle插件版本(在项目根目录build.gradle的dependencies块里的com.android.tools.build:gradle)和Gradle wrapper版本(gradle/wrapper/gradle-wrapper.properties里的distributionUrl)更新到稳定的最新版本,比如插件用7.0.0以上,Gradle用7.0以上版本,新版本通常会修复很多已知的Dex合并问题。

内容的提问来源于stack exchange,提问作者Ghulam Ali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:36:55