使用KTS构建工具学习Android Hilt时kapt配置报错求助
解决KTS中Hilt依赖的kapt类型不匹配错误
问题根源:你在app模块的
build.gradle.kts里导入了import org.jetbrains.kotlin.kapt3.base.Kapt.kapt,这个导入会覆盖dependencies块中用于声明注解处理器依赖的kapt函数,导致编译器把你传入的依赖字符串当成了配置KaptExtension的Action参数,从而抛出类型不匹配错误。修复步骤:
- 直接删除app模块
build.gradle.kts顶部的import org.jetbrains.kotlin.kapt3.base.Kapt.kapt导入语句。 - 保留原有的dependencies依赖声明和kapt配置块即可。
- 直接删除app模块
修改后的app模块build.gradle.kts核心代码如下:
plugins { id("com.android.application") kotlin("kapt") id("com.google.dagger.hilt.android") } // 省略android配置块... dependencies { // 省略其他依赖... implementation("com.google.dagger:hilt-android:2.44") kapt("com.google.dagger:hilt-android-compiler:2.44") } // Allow references to generated code kapt { correctErrorTypes = true }
原理说明:在KTS语法中,dependencies块内的kapt是Gradle提供的专用配置函数,用于添加注解处理器依赖;而你导入的Kapt.kapt是用于配置kapt编译选项的顶层函数,两者重名导致语法冲突。删除错误导入后,编译器会正确识别dependencies里的kapt是依赖配置函数,问题即可解决。
内容的提问来源于stack exchange,提问作者1872386506
相关产品推荐
相关产品推荐

