如何解决Android中的DefaultLenientConfiguration$ArtifactResolveException异常
解决Room依赖解析异常(Could not resolve all files for configuration ':app:debugRuntimeClasspath')
问题分析
你的依赖配置存在几个明确问题,导致Gradle无法正常解析依赖:
- Room组件版本不统一:
room-runtime使用2.6.0-alpha01,但room-ktx使用2.5.1,版本不一致会引发依赖冲突。 - 重复引入Room编译器:同时使用
annotationProcessor和kapt引入Room编译器,Kotlin项目仅需保留kapt即可。 - Kotlin版本不匹配:项目级Gradle中Kotlin版本为
1.8.0,但app模块使用1.8.10,版本差异会导致兼容性问题。 - 使用Room预览版:
2.6.0-alpha01是Alpha预览版,存在未验证的兼容性风险,优先选择稳定版本更稳妥。
修复步骤
1. 统一Room所有组件版本
将Room相关依赖全部改为同一稳定版本(比如2.5.1),替换原有配置:
// Room components implementation "androidx.room:room-runtime:2.5.1" kapt "androidx.room:room-compiler:2.5.1" implementation "androidx.room:room-ktx:2.5.1"
2. 移除重复的编译器配置
删除app模块依赖中的这一行:
annotationProcessor "androidx.room:room-compiler:2.6.0-alpha01"
3. 统一Kotlin版本
修改项目级build.gradle,将Kotlin版本与app模块保持一致:
plugins { id 'com.android.application' version '7.4.2' apply false id 'com.android.library' version '7.4.2' apply false id 'org.jetbrains.kotlin.android' version '1.8.10' apply false }
4. 清理缓存并重新同步
- 点击Android Studio右上角的
Sync Project with Gradle Files按钮同步项目 - 若仍有问题,执行
File -> Invalidate Caches... -> Invalidate and Restart清理缓存并重启IDE
额外建议
- 日常开发优先使用稳定版依赖,预览版仅用于测试新特性
- 定期检查依赖版本,确保Room、Lifecycle、Kotlin等组件版本相互兼容
内容的提问来源于stack exchange,提问作者PurpleRabbit
相关产品推荐
相关产品推荐

