构建安卓应用报':app:checkDebugAarMetadata'执行失败错误如何解决
问题排查与解决方案
问题本质
该报错的核心原因是项目当前配置的编译SDK版本(compileSdkVersion=30)低于依赖库要求的最低编译SDK版本:androidx.core:core-ktx:1.7.0-beta01、androidx.core:core:1.7.0-beta01两个依赖要求minCompileSdk=31,触发AAR元数据校验失败。
排查步骤
- 打开app模块下的
build.gradle文件,定位compileSdkVersion配置项,确认当前配置值为30 - 若你没有手动引入上述两个core库,可执行依赖树查询命令定位间接引入的上游依赖:
- Mac/Linux执行:
./gradlew app:dependencies - Windows执行:
gradlew.bat app:dependencies
- Mac/Linux执行:
解决方法
方案1:升级项目compileSdk(推荐)
该方案不会影响应用向下兼容性,还能获得更多编译优化和新API支持,避免后续引入其他依赖再次出现同类冲突。
修改app模块build.gradle配置:
android { compileSdkVersion 31 // 把原有30改为31 defaultConfig { // 同步修改targetSdkVersion避免后续兼容性警告 targetSdkVersion 31 // 其余原有配置保持不变 } }
修改完成后同步Gradle,重新构建项目即可。
方案2:强制锁定core库低版本(适合暂时不想升级compileSdk的场景)
在app模块build.gradle的dependencies代码块前添加版本强制锁定配置,将core库固定到支持compileSdk30的最新稳定版:
configurations.all { resolutionStrategy { force 'androidx.core:core-ktx:1.6.0' force 'androidx.core:core:1.6.0' } } dependencies { // 原有依赖配置保持不变 }
同步Gradle后重新构建即可。
注意事项
使用方案2时,后续更新其他三方依赖可能再次出现版本冲突,需要根据实际报错调整强制锁定的依赖版本。
内容的提问来源于stack exchange,提问作者Laraib. Sheikh
相关产品推荐
相关产品推荐

