Android Studio JellyFish添加Kotlin-kapt插件遇版本冲突错误求助
解决Kotlin Kapt插件版本冲突问题
核心问题分析
错误提示表明org.jetbrains.kotlin.kapt插件已通过其他依赖/插件间接引入到classpath,但版本未知,导致手动指定版本时出现兼容性校验失败。结合你的配置,主要问题出在Hilt Compiler的依赖方式错误以及潜在的插件间接引入冲突。
具体修复步骤
1. 修正Hilt Compiler的依赖声明
Hilt Compiler是注解处理器,必须使用kapt而非implementation引入,否则会导致注解处理器相关插件的隐式冲突。修改build.gradle的dependencies块:
dependencies { // ... 其他依赖保持不变 kapt libs.hilt.android.compiler // 替换原来的implementation implementation libs.hilt.android // ... 其他测试依赖保持不变 }
2. 确保插件版本完全一致
在libs.versions.toml中,补充Hilt插件的版本配置,并确保所有Kotlin相关插件使用同一版本:
[versions] agp = "8.2.0" # 匹配Android Studio JellyFish的AGP版本 kotlin = "1.9.0" # 与AGP版本兼容的Kotlin版本 hilt = "2.48" # 对应Kotlin 1.9.0的Hilt版本 # ... 其他版本号 [plugins] android-application = { id = "com.android.application", version.ref = "agp" } jetbrains-kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } jetbrains-kotlin-kapt = { id = "org.jetbrains.kotlin.kapt", version.ref = "kotlin" } dagger-hilt-android = { id = "dagger.hilt.android.plugin", version.ref = "hilt" }
3. 完整配置Plugins块
将所有插件统一通过别名引入,避免手动指定导致的版本不一致:
plugins { alias(libs.plugins.android.application) alias(libs.plugins.jetbrains.kotlin.android) alias(libs.plugins.jetbrains.kotlin.kapt) alias(libs.plugins.dagger-hilt-android) // 其他需要的插件如kotlin-parcelize、navigation.safeargs等也统一用别名配置 }
4. 清理Gradle缓存
执行以下命令清理缓存,避免旧缓存导致的残留冲突:
./gradlew cleanBuildCache
或者在Android Studio中执行:File -> Invalidate Caches... -> 选择Invalidate and Restart
验证修复
同步Gradle项目后,若仍有问题,可执行./gradlew dependencies --configuration kapt查看kapt相关依赖的版本树,确认是否存在版本不一致的情况,针对性调整。
内容的提问来源于stack exchange,提问作者Jayanta Sarkar
相关产品推荐
相关产品推荐

