Gradle DSL方法未找到:'kapt()'。

106
Gradle DSL 方法未找到:'kapt()' 可能的原因: 项目'jetpacklearn'可能正在使用不包含该方法的Android Gradle插件版本(例如'testCompile'在1.1.0中添加)。 升级插件至版本3.4.0并同步项目。
项目'jetpacklearn'可能正在使用不包含该方法的Gradle版本。 打开Gradle wrapper文件。
我的gradleVersion是'3.4.0',但无法处理它,请问我相同的问题。
    classpath "com.android.tools.build:gradle:$gradleVersion"
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
    classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigationVersion"

3
为什么会被踩?这是一个有效的问题,而且你按照官方的Android文档也会遇到这个错误信息。更重要的是,错误信息中内置的建议很混乱并且是错误的(提到升级到Gradle 1.0,而我们实际上已经在3.x版本了)。 - Andrew Koster
9个回答

227

检查一下你的应用程序 build.gradle 文件顶部是否有这个内容?

apply plugin: 'kotlin-kapt'

5
安卓官方文档告诉我在依赖 { } 中使用 kapt,却从未提及此事。谷歌干得好。 - El Sushiboi

89

添加这行内容

apply plugin: 'kotlin-kapt'

如果您在 Android 库 中使用了 kapt,您必须在项目中添加 kotlin-android 插件。

apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'

1
非常感谢。这就是我的问题所在。即使是Android关于使用Hilt入门的文档也没有提到这一点。https://developer.android.com/training/dependency-injection/hilt-android - Cb32019

34

只需在您的应用程序级别的build.gradle文件中添加这一行:

apply plugin: 'kotlin-kapt'

注意:apply plugin: 'com.android.application'下方


注意...这里提到的非常重要。我从来没有想过插件的顺序会有影响。非常感谢。 - skafle

24

将以下代码添加到您的build.gradle文件中,然后再次同步gradle。

apply plugin: 'kotlin-kapt'


16

您的 build.Gradle 文件顶部应该有以下内容

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'

5

在您的应用级 build.gradle 中应用以下插件。

apply plugin: 'kotlin-kapt'

5

2
这是因为您在应用级别的Gradle中缺少应用'kotlin-kapt'。有两种方法可以添加此插件。
如果您的项目有插件块,请按以下方式添加:
plugins {
    ...
    ...
    id 'kotlin-kapt'
}

或者您可以使用apply关键字进行添加。
apply plugin: 'kotlin-kapt'

0
这是因为你在gradle中缺少了一些东西。 如果你使用的是Kotlin DSL,请在项目级别的build.gradle.kts文件中添加以下内容。
plugins {
   id("com.google.devtools.ksp") version ("1.8.21-1.0.11") apply false
}

在 app_level build.gradle.kts 文件中
plugins {
   id("com.google.devtools.ksp")
}

并添加这些依赖项
 implementation("androidx.room:room-common:2.5.2")
 implementation("androidx.room:room-ktx:2.5.2")
 ksp("androidx.room:room-compiler:2.5.2")

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接