引入lifecycle-runtime-compose后Compose Groovy项目构建冲突求助
解决思路
核心原因
添加的androidx.lifecycle:lifecycle-runtime-compose:2.6.0-alpha05依赖内部依赖了Kotlin 1.8.0标准库,但你的项目当前使用的Kotlin Android插件版本是1.7.0,导致项目中同时存在Kotlin 1.7.0和1.8.0的标准库模块,引发类重复冲突。
具体解决方案
1. 升级Kotlin Android插件版本
修改项目根目录下的build.gradle(或build.gradle.kts)中的Kotlin插件版本,与新依赖要求的版本对齐:
id 'org.jetbrains.kotlin.android' version '1.8.0' apply false
2. 统一Lifecycle依赖版本
避免混合使用不同版本的Lifecycle库,将项目中所有Lifecycle相关依赖(原2.5.1版本)统一升级到2.6.0-alpha05,例如:
// 替换原2.5.1的Lifecycle依赖 implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.6.0-alpha05' implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.6.0-alpha05' // 保留你新加的依赖 implementation 'androidx.lifecycle:lifecycle-runtime-compose:2.6.0-alpha05'
3. (可选)强制统一Kotlin标准库版本
如果升级插件后仍有冲突,可以在项目根build.gradle中添加强制统一Kotlin版本的配置:
allprojects { configurations.all { resolutionStrategy { force 'org.jetbrains.kotlin:kotlin-stdlib:1.8.0' force 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0' } } }
验证冲突来源
可以通过Gradle命令查看依赖树,确认冲突的具体来源:
./gradlew app:dependencies
搜索kotlin-stdlib相关条目,定位到引入旧版本的依赖,针对性处理。
内容的提问来源于stack exchange,提问作者Rowan Gontier
相关产品推荐
相关产品推荐

