54

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'
}

5 Answers 5

121

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).

Sign up to request clarification or add additional context in comments.

4 Comments

Realm.io should have this instruction on their website. It is a non-sense that we have to ask things around here and find solutions.
I loved that before word :P
Didn't notice and used apply plugin: 'com.android.library' which broke my build, make sure to use apply plugin: 'com.android.application' if it's an application
with newer versions of android studio place in inside plugins section. plugins { id 'com.android.application' id 'kotlin-android' id 'kotlin-kapt' }
4

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
}

}

Comments

3

Try putting:

apply plugin: 'kotlin-kapt'

before:

apply plugin: 'realm-android'

I had the same issue and this worked for me

Comments

0

was facing the same issue, project was on git i just hit the pull and there was the issue that Kapt() not found .

Fixed: clear cache and restart/add apply plugin: 'kotlin-kapt' at the top/ sync project

Comments

0

kapt is now deprecated and ksp is what you should add.

https://developer.android.com/build/migrate-to-ksp#kts

In your libs.version.toml file add:

ksp-android = { id = "com.google.devtools.ksp", version = "1.9.10-1.0.13" }

& then in build.gradle.kts add:

plugins {
    alias(libs.plugins.android.application)
    alias(libs.plugins.kotlin.android)
    alias(libs.plugins.ksp.android) // This is adding ksp
}

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.