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

Android构建APK失败:重复META-INF文件问题求助

解决APK构建时META-INF重复文件冲突问题

我之前也碰到过一模一样的问题,这大概率是多个依赖库重复打包了同一个lifecycle版本文件导致的,给你几个亲测有效的解决办法:

1. 精准排除冲突的特定文件

你之前用exclude 'META-INF/**'可能范围太广或者匹配规则没生效,不如直接指定冲突的那个具体文件试试。在app模块的build.gradle里修改packagingOptions:

android {
    packagingOptions {
        exclude 'META-INF/android.arch.lifecycle_runtime.version'
    }
}

这样只移除引发冲突的那个版本文件,不会影响其他必要的META-INF内容。

2. 排查并解决依赖冲突

这个错误本质上是依赖重复引入导致的,你可以先查看项目的依赖树,找出重复的lifecycle相关依赖:

./gradlew app:dependencies

执行后在输出里找android.arch.lifecycle:runtime相关的条目,看是不是有多个版本或者被第三方库间接引入的情况。

如果发现某个第三方库内置了旧版的lifecycle,可以在引入该库时强制排除重复的依赖:

implementation('com.example:your-third-party-lib:x.x.x') {
    exclude group: 'android.arch.lifecycle', module: 'runtime'
}

或者统一指定lifecycle的版本,让gradle强制使用同一个版本来避免冲突:

android {
    configurations.all {
        resolutionStrategy.force 'android.arch.lifecycle:runtime:1.1.1' // 替换成项目适配的稳定版本
    }
}

3. 清理缓存后重建项目

有时候Android Studio的缓存也会导致这种奇怪的冲突,试试以下步骤:

  • 点击顶部菜单栏的Build -> Clean Project
  • 接着点击Build -> Rebuild Project
  • 如果还是不行,手动删除项目根目录下的.gradle文件夹和app模块里的build文件夹,再重新同步项目并构建

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:16:38