Android项目构建失败:androidx.core依赖版本冲突问题求助
Android项目构建失败:依赖androidx.core预览版导致编译版本不兼容
错误信息
检查AAR元数据时发现2个问题:
- 依赖androidx.core:core:1.12.0-alpha01要求依赖它的库和应用需针对Android API代号为"UpsideDownCake"的版本编译。
:app模块当前编译目标为android-33。
建议操作:更换依赖androidx.core:core:1.12.0-alpha01的版本,或若您打算试用该预览版SDK,在build.gradle文件中设置compileSdkPreview为"UpsideDownCake"。- 依赖androidx.core:core-ktx:1.12.0-alpha01要求依赖它的库和应用需针对Android API代号为"UpsideDownCake"的版本编译。
:app模块当前编译目标为android-33。
建议操作:更换依赖androidx.core:core-ktx:1.12.0-alpha01的版本,或若您打算试用该预览版SDK,在build.gradle文件中设置compileSdkPreview为"UpsideDownCake"。
问题原因
你在build.gradle (app)中明确配置了androidx.core:core-ktx:1.9.0,但Gradle的依赖传递机制会自动引入其他依赖库所依赖的版本。androidx.core:core:1.12.0-alpha01是刚发布的预览版,某个第三方库或AndroidX库在更新后间接引入了这个版本,导致与当前compileSdk 33不兼容。
解决方案
1. 定位引入预览版的依赖
执行Gradle命令查看依赖树,找到哪个库引入了高版本的androidx.core:
./gradlew app:dependencies
或者在Android Studio中打开File > Project Structure > Dependencies,使用Dependency Analyzer搜索androidx.core,查看完整依赖链。
2. 强制指定稳定版本
在build.gradle (app)中添加版本强制策略,覆盖传递依赖的预览版:
方式一:针对单个依赖设置强制版本
在dependencies块中修改core-ktx的配置,同时显式添加core的稳定版本并强制:
implementation('androidx.core:core-ktx:1.9.0') { force = true } implementation('androidx.core:core:1.9.0') { force = true }
方式二:全局强制版本
在android块中添加全局解析策略,确保所有依赖都使用指定的稳定版本:
android { // ...其他现有配置 configurations.all { resolutionStrategy { force 'androidx.core:core:1.9.0' force 'androidx.core:core-ktx:1.9.0' } } }
3. 不推荐:升级到预览版SDK
如果想试用UpsideDownCake预览版,可修改compileSdk配置:
android { compileSdkPreview "UpsideDownCake" targetSdkPreview "UpsideDownCake" }
但此方案会引入不稳定的预览版API,可能导致其他兼容性问题,不建议用于生产环境。
内容的提问来源于stack exchange,提问作者Valentin Cerneanu
相关产品推荐
相关产品推荐

