Gradle DSL 方法未找到:'kapt()',并且找不到ID为'kotlin-kapt'的插件。

4

我使用Algolia开发了一个Android应用程序,其中包含一个搜索界面。

为此,我按照这个InstantSearch指南进行操作,但是当我在我的应用程序build.gradle中添加kapt "androidx.lifecycle:lifecycle-compiler:2.0.0"依赖项时,出现了ERROR: Gradle DSL method not found: 'kapt()'错误。

我尝试在应用程序build.gradle文件的顶部添加apply plugin: 'kotlin-kapt'(参见此处),但随后又出现了Plugin with id 'kotlin-kapt' not found.错误。

以下是我的应用build.gradle文件:

apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'kotlin-kapt'

android {
    buildToolsVersion "28.0.3"
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.memoryDiary.Activity.Start"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    //noinspection GradleCompatible
    implementation 'androidx.appcompat:appcompat:1.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    implementation 'com.google.android.material:material:1.0.0'
    implementation 'androidx.cardview:cardview:1.0.0'
    implementation 'androidx.recyclerview:recyclerview:1.0.0'
    implementation 'com.sangcomz:FishBun:0.9.1'
    implementation 'com.squareup.picasso:picasso:2.71828'
    implementation 'com.getbase:floatingactionbutton:1.10.1'
    implementation 'com.github.clans:fab:1.6.4'
    implementation 'com.github.bumptech.glide:glide:4.9.0'
    implementation 'com.mobsandgeeks:android-saripaar:2.0.3'
    implementation 'androidx.legacy:legacy-support-v13:1.0.0'

    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.1.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0'

    implementation 'com.google.firebase:firebase-auth:17.0.0'
    implementation 'com.google.firebase:firebase-database:17.0.0'
    implementation 'com.google.firebase:firebase-core:16.0.9'
    implementation 'com.google.firebase:firebase-storage:17.0.0'
    implementation 'com.google.firebase:firebase-ml-vision:22.0.0'
    implementation 'com.google.firebase:firebase-ml-vision-image-label-model:18.0.0'

    implementation 'com.algolia:algoliasearch-android:3.+'
    implementation 'com.algolia:instantsearch-android:2.0.0'
    implementation "androidx.lifecycle:lifecycle-extensions:2.0.0"
    kapt "androidx.lifecycle:lifecycle-compiler:2.0.0"

    implementation 'com.google.code.gson:gson:2.8.5'
}

我该如何解决这个问题?


请粘贴您的 build.gradle 文件。 - barq
@barq 我已经粘贴了。 - Dvir Barzilay
2个回答

1
您还需要应用以下插件:

apply plugin: 'kotlin-android'

我添加了 classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.41",但仍然出现 Gradle DSL method not found: 'kapt()' 错误。 - Dvir Barzilay

1

如果你使用 Kotlin,你必须使用这个:

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

嗨,apply plugin: 'kotlin-android-extensions'是可选的,如果您正在使用Kotlin扩展来开发Android应用程序,则可以添加此行。 - Pavel Santaev

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