Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Configuration with name 'kapt' not found

Tags:

android

I'm trying to use Realm database on my project i add

classpath "io.realm:realm-gradle-plugin:5.9.0"

to build.gradle

and

apply plugin: 'realm-android'

to module build.gradle, after click on sync i get this error:

Configuration with name 'kapt' not found.

build.gradle content:

buildscript {
    ext.kotlin_version = '1.3.21'
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.jakewharton.hugo:hugo-plugin:1.2.1'
        classpath 'com.novoda:bintray-release:0.9'
        classpath "io.realm:realm-gradle-plugin:5.9.0"
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven { url "https://jitpack.io" }
    }
}

build.gradle module content:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'com.jakewharton.hugo'
apply plugin: 'com.novoda.bintray-release'
apply plugin: 'realm-android'
apply plugin: 'kotlin-kapt'

android {
    compileSdkVersion 28

    defaultConfig {
        applicationId "xx.xxxxx.xxxxxxxx"
        minSdkVersion 21
        versionCode 1
        versionName "1"
        vectorDrawables.useSupportLibrary = true
        multiDexEnabled = true
        javaCompileOptions {
            annotationProcessorOptions {
                includeCompileClasspath false
            }
        }
    }

    dataBinding {
        enabled = true
    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES.txt'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/dependencies.txt'
        exclude 'META-INF/LGPL2.1'
        exclude 'META-INF/rxjava.properties'
    }

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

/* IMPORTANT : 
 * Be careful when update dependencies, different version library may caused error */

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    //noinspection GradleCompatible
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:design:28.0.0'
    implementation 'com.android.support:cardview-v7:28.0.0'
    implementation 'com.android.support:recyclerview-v7:28.0.0'
    implementation 'com.android.support:support-v13:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation 'com.android.support:support-vector-drawable:28.0.0'
    implementation 'com.android.support:support-v4:28.0.0'
    // google maps library ------------------------------------------------------------------------
    implementation 'com.google.android.gms:play-services:12.0.1'

    // google gson --------------------------------------------------------------------------------
    implementation 'com.google.code.gson:gson:2.8.4'
    // third party dependencies 
    implementation 'com.github.smart-fun:TabStacker:1.0.4'
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'org.jetbrains:annotations-java5:15.0'      // add this line
    implementation 'com.fatboyindustrial.gson-jodatime-serialisers:gson-jodatime-serialisers:1.2.0'

    implementation 'com.github.armcha:AutoLinkTextView:0.3.0'
    implementation "com.github.bumptech.glide:glide:4.8.0"
    annotationProcessor "com.github.bumptech.glide:compiler:4.8.0"

    implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'
    implementation 'io.reactivex.rxjava2:rxjava:2.2.4'
    implementation 'com.squareup.retrofit2:adapter-rxjava:2.2.0'
    implementation 'com.google.dagger:dagger:2.15'
    annotationProcessor 'com.google.dagger:dagger-compiler:2.10'
    implementation 'com.google.dagger:dagger-android:2.15'
    implementation 'com.google.dagger:dagger-android-support:2.10'
    annotationProcessor 'com.google.dagger:dagger-android-processor:2.10'
    implementation 'com.google.code.gson:gson:2.8.4'
    implementation 'com.jakewharton.timber:timber:4.7.1'
    implementation('io.socket:socket.io-client:1.0.0') {
        exclude group: 'org.json', module: 'json'
    }
    implementation 'com.birbit:android-priority-jobqueue:2.0.1'
    implementation 'com.github.onehilltech.concurrent:concurrent-android:0.8.1'
    implementation 'com.balysv.materialmenu:material-menu:2.0.0'
    implementation 'com.squareup.picasso:picasso:2.71828'
    implementation 'com.android.support:multidex:1.0.3'
    implementation 'com.jakewharton:butterknife:8.5.1'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
    implementation 'com.blankj:utilcode:1.22.10'
    implementation 'com.ncapdevi:frag-nav:3.0.0'
    implementation 'com.daimajia.easing:library:1.0.0@aar'
    implementation 'com.daimajia.androidanimations:library:1.1.2@aar'
    implementation 'com.nineoldandroids:library:2.4.0'
    implementation 'org.parceler:parceler-api:1.1.8'
    annotationProcessor 'org.parceler:parceler:1.1.8'
    implementation 'com.squareup.retrofit2:retrofit:2.2.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.2.0'
    implementation 'com.squareup.okhttp3:logging-interceptor:3.3.0'
    implementation 'com.pnikosis:materialish-progress:1.7'
    implementation 'org.greenrobot:eventbus:3.1.1'
    implementation project(path: ':bottomsheet-commons')
    implementation 'org.jsoup:jsoup:1.9.2'

    kapt "io.realm:realm-annotations-processor:5.9.0"
}

kapt {
    correctErrorTypes = true
}

repositories {
    mavenCentral()
}

configurations {
    cleanedAnnotations
    compile.exclude group: 'org.jetbrains', module: 'annotations'
}
like image 295
DolDurma Avatar asked Feb 19 '19 09:02

DolDurma


People also ask

What is kapt in gradle?

Kapt is the Kotlin Annotation Processing Tool, and it's in pretty good shape these days. If you want to be able to reference generated code from Kotlin, you need to use kapt. To do that, simply include the plugin in your build.gradle file with the line: apply plugin: 'kotlin-kapt'

Is kapt deprecated?

app: Original kapt is deprecated.


3 Answers

I had the same issue but I was lacking the line

apply plugin: 'kotlin-kapt'

After briefly trying, I found that adding the line before apply plugin: 'realm-android' works for me.

In my case the top part of my working build.gradle looks like this:

apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
apply plugin: 'realm-android'

So please try the following:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
apply plugin: 'com.jakewharton.hugo'
apply plugin: 'com.novoda.bintray-release'
apply plugin: 'realm-android'

And if that doesn't work, try moving the line directly above the apply realm plugin line (i.e. below the hugo and bintray plugins).

like image 166
Svarr Avatar answered Oct 23 '22 17:10

Svarr


Try putting:

apply plugin: 'kotlin-kapt'

before:

apply plugin: 'realm-android'

I had the same issue and this worked for me

like image 42
snor09 Avatar answered Oct 23 '22 15:10

snor09


If you're using some version of Android Studio ArcticFox, there's a new way of declaring these plugins. It goes like this on your build.gradle (app level)

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-kapt'
    id 'realm-android'
}

android {
    ....
}

realm {
    syncEnabled = true
}

dependencies {
    ....
}

And don't forget the build.gradle (project level)

buildscript {
ext.kotlin_version = "1.6.0"
ext.realm_version = '10.8.1'
repositories {
    google()
    mavenCentral()
    maven { url 'https://jitpack.io' }
    jcenter()
}
dependencies {
    classpath "com.android.tools.build:gradle:7.0.3"
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath "io.realm:realm-gradle-plugin:$realm_version"

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

}

like image 1
fetchSerotonin Avatar answered Oct 23 '22 17:10

fetchSerotonin