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

编译通过但无法运行:transformClassesWithMultidexlist任务执行失败

解决':app:transformClassesWithMultidexlistForPropDebug'任务失败问题

我之前也踩过这个Multidex相关的构建坑,大概率是类引用处理、依赖冲突或者构建缓存出了问题,给你几个亲测有效的解决步骤:

  • 第一步:清理构建缓存,重新构建
    先试试最基础的清理操作,有时候缓存损坏会导致这种莫名其妙的错误。可以在终端运行:

    ./gradlew clean
    ./gradlew assemblePropDebug
    

    或者直接在Android Studio里点击Build > Clean Project,再选择Rebuild Project。

  • 第二步:排查依赖冲突或重复类
    这个错误经常是因为不同依赖包包含了重复类,或者依赖版本不兼容导致的。你可以用依赖分析命令找出冲突点:

    ./gradlew app:dependencies
    

    重点查看compileClasspath下的依赖,有没有重复的库或者版本不一致的情况(比如多版本的AndroidX库)。找到冲突后,用exclude排除多余依赖,示例:

    implementation('com.example:some-library:1.0.0') {
        exclude group: 'androidx.appcompat', module: 'appcompat'
    }
    
  • 第三步:检查Multidex配置是否正确
    确保app模块的build.gradle里Multidex配置没问题:

    android {
        defaultConfig {
            multiDexEnabled true
        }
    }
    
    dependencies {
        implementation 'androidx.multidex:multidex:2.0.1'
    }
    

    如果有自定义Application类,要么让它继承MultiDexApplication,要么在attachBaseContext里手动调用初始化:

    public class MyApplication extends Application {
        @Override
        protected void attachBaseContext(Context base) {
            super.attachBaseContext(base);
            MultiDex.install(this);
        }
    }
    

    别忘了在AndroidManifest.xml里指定这个自定义Application类。

  • 第四步:给Gradle构建增加堆内存
    有时候是构建过程内存不足导致的,你可以在项目根目录的gradle.properties里调整内存配置:

    org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
    
  • 第五步:手动删除损坏的构建中间文件
    错误里提到的componentClasses.jar如果损坏,也会导致任务失败。你可以手动删除这个文件所在的目录:

    rm -rf /Users/user/Documents/Repositories/secret/secret/app/build/intermediates/multi-dex/prp/debug/
    

    删除后重新构建项目即可。

如果以上步骤都试过还是没解决,建议把完整的错误堆栈信息贴出来,能更精准定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 11:10:33