同步Gradle时遇‘kapt()’方法未找到错误,求解决方案
解决Gradle DSL method not found: 'kapt()'错误
问题详情
同步Gradle时触发如下错误:
Gradle DSL method not found: 'kapt()'
Possible causes:
Your project may be using a version of the Android Gradle plug-in that does not contain the method (e.g. 'testCompile' was added in 1.1.0).
已完成的配置:
- app模块
build.gradle已应用插件:
apply plugin: "com.android.application" apply plugin: "com.facebook.react" apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt'
- 项目根目录
build.gradle插件配置:
plugins{ id 'org.jetbrains.kotlin.android' version '2.0.0-Beta4' apply false id 'com.google.devtools.ksp' version '2.0.0-Beta4-1.0.17' apply false }
已将AGP升级至8.2.1,但错误仍未解决。
可行解决步骤
1. 调整插件应用顺序
确保kotlin-kapt插件在com.android.application之后、React Native插件之前应用,避免插件加载顺序冲突:
apply plugin: "com.android.application" apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' apply plugin: "com.facebook.react"
2. 匹配Kotlin与AGP的稳定兼容版本
AGP 8.2.1对应的稳定Kotlin版本为1.9.x,你当前使用的Kotlin 2.0.0-Beta4是预览版,存在兼容性风险。建议降级到稳定版:
修改根目录build.gradle:
plugins{ id 'org.jetbrains.kotlin.android' version '1.9.22' apply false id 'com.google.devtools.ksp' version '1.9.22-1.0.17' apply false }
3. 确认kapt()的使用位置
确保kapt()依赖声明在app模块的dependencies代码块内,而非根目录build.gradle,示例:
dependencies { kapt 'com.squareup.moshi:moshi-kotlin-codegen:1.15.0' // 其他依赖... }
4. 清理缓存并重新同步
- 执行
File > Sync Project with Gradle Files - 清理缓存:
File > Invalidate Caches... > 勾选Invalidate and Restart - 手动删除项目根目录及app模块下的
.gradle文件夹,再重新同步
5. 切换为新版plugins DSL格式
若项目采用Gradle新版插件声明方式,将app模块build.gradle的插件声明改为如下格式:
plugins { id 'com.android.application' id 'kotlin-android' id 'kotlin-kapt' id 'com.facebook.react' }
内容的提问来源于stack exchange,提问作者username55544433
相关产品推荐
相关产品推荐

