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'
}
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'
app: Original kapt is deprecated.
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).
Try putting:
apply plugin: 'kotlin-kapt'
before:
apply plugin: 'realm-android'
I had the same issue and this worked for me
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
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With