未修改任何项目依赖却出现androidx.core:core-ktx:1.7.0依赖错误
问题根因
你项目依赖的androidx.core:core-ktx库被拉取到了1.7.0-alpha02版本,该版本要求最低编译SDK版本为31,而你当前项目的compileSdkVersion配置为30,版本不匹配导致构建失败。即使你没有手动修改依赖,也可能是因为之前依赖该库时使用了动态版本号(如1.+、+),或者项目中其他三方依赖传递引入了该版本的core-ktx。
解决方案
方案1:固定core-ktx兼容版本(推荐,无需修改编译配置)
在app模块的build.gradle文件的dependencies块中,强制指定core-ktx的版本为兼容compileSdk 30的最新稳定版1.6.0:
dependencies { // 原有其他依赖保持不变 implementation('androidx.core:core-ktx:1.6.0') { force = true } }
如果需要全局强制所有模块都使用该版本,可以在根目录的build.gradle文件中添加如下配置:
allprojects { configurations.all { resolutionStrategy { force 'androidx.core:core-ktx:1.6.0' } } }
修改完成后同步Gradle即可恢复构建。
方案2:升级项目compileSdk到31(根治方案)
直接在app模块的build.gradle文件中修改compileSdkVersion配置:
android { compileSdkVersion 31 // 原有其他配置保持不变 // 无需同步升级targetSdkVersion,保留原有值即可避免运行时兼容问题 }
同步Gradle后即可正常构建,你当前使用的Android Studio Arctic Fox 2020.3.1原生支持compileSdk 31,无需额外升级IDE。
方案3:临时关闭AAR元数据检查(仅应急使用,不推荐)
如果需要临时绕过检查快速构建,可以在项目根目录的gradle.properties文件中添加如下配置:
android.disableAarMetadataCheck=true
该配置会全局关闭所有AAR元数据的版本校验,可能隐藏其他依赖不兼容风险,仅建议临时应急使用,后续还是建议采用前两种方案处理。
内容的提问来源于stack exchange,提问作者blackkara
相关产品推荐
相关产品推荐

