构建报错:存在重复类androidx.lifecycle.ViewModelLazy,启用Jetifier仍无效
解决重复类androidx.lifecycle.ViewModelLazy的依赖冲突问题
排查依赖树定位冲突来源
在Android Studio终端执行Gradle命令查看项目完整依赖树,找出引入jetified-lifecycle-viewmodel-ktx-2.3.1-runtime的具体依赖:./gradlew app:dependencies搜索结果中重点关注包含
lifecycle-viewmodel-ktx或lifecycle-viewmodel的条目,标记出使用2.3.1版本的依赖项。排除冲突的旧版本依赖
在build.gradle(Module级别)的dependencies块中,针对引入旧版本的依赖添加exclude规则,移除重复的lifecycle模块:implementation("第三方依赖的完整坐标") { exclude group: 'androidx.lifecycle', module: 'lifecycle-viewmodel-ktx' exclude group: 'androidx.lifecycle', module: 'lifecycle-viewmodel' }强制统一lifecycle库版本
在项目根目录的build.gradle中,通过resolutionStrategy强制所有依赖使用2.5.1版本的lifecycle库:allprojects { configurations.all { resolutionStrategy { force 'androidx.lifecycle:lifecycle-viewmodel:2.5.1' force 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1' } } }若使用Android Studio Arctic Fox及以上版本,也可在settings.gradle的dependencyResolutionManagement中统一版本:
dependencyResolutionManagement { versions { lifecycleVersion = "2.5.1" } libraries { library("androidx.lifecycle:lifecycle-viewmodel") { version.ref = "lifecycleVersion" } library("androidx.lifecycle:lifecycle-viewmodel-ktx") { version.ref = "lifecycleVersion" } } }清理缓存并重新构建
执行以下命令清理Gradle缓存并重新构建项目,确保修改生效:./gradlew clean build --refresh-dependencies
内容的提问来源于stack exchange,提问作者Rushit Patel
相关产品推荐
相关产品推荐

