After adding Kapt plugin - A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution

21,398

Solution 1

After a week's struggle, I finally found the issue.

I added the kotlin-kapt plugin for realm.

And I had a folder named interface itself to hold some interfaces.

I implemented one of the interfaces from the interface folder in MainActivity.

Now the import for the interface was something like this,

import com.android.app.java.interface.Listener

Where, the keyword interface confused the annotation processor, hence caused error while generating stub.

I renamed the folder (from interface to intrface).

That solved the error.

This is a very simple mistake that cost me a week.

Anyway, found the issue. Yay!

Solution 2

Replacing

kapt "android.arch.persistence.room:compiler:$room_version"

by

implementation "androidx.room:room-runtime:$room_version"
kapt "androidx.room:room-compiler:$room_version"

might fix it as well.

Solution 3

I had the same problem. I forgot to add @Dao annotation in my room database

Solution 4

I had the same problem because i had forgotten to add a converter in a list included in entity..In room you have to add converters in order to store lists in databas

Solution 5

check your fields in Model DB maybe you have val, change to var like this:

open class User(var id: Int?= null,
            var name: String? = null,
            var lastName: String? = null): RealmObject()
Share:
21,398

Related videos on Youtube

Mustaqode
Author by

Mustaqode

Full-time Android Developer [ Kotlin / Java ] and Flutter enthusiast !

Updated on October 07, 2021

Comments

  • Mustaqode
    Mustaqode over 2 years

    First of all,

    I'm pretty much aware that a lot of questions on this error had been posted already here, and none of them seems to be having a proper solution especially the one I need.

    I'm stuck with the following error for over a week.

    I'm working on an android project which is being built using Kotlin, MVVM, Clean Arch, and Navigation Components.

    I recently added realm database, and for that I had to add the following plugins.

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

    The real problem started from here I think.

    (After that I added a DatabaseManager class which makes use of some realm extension functions I wrote to make db operations.)

    When I compile the project after this, the following error occurred overall.

    A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution
    

    Along with the following

    FAILURE: Build failed with an exception.
    
    * What went wrong:
    Execution failed for task ':app:kaptDebugKotlin'.
    > A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution
       > java.lang.reflect.InvocationTargetException (no error message)
    
    * Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
    
    * Get more help at https://help.gradle.org
    
    Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
    Use '--warning-mode all' to show the individual deprecation warnings.
    See https://docs.gradle.org/6.1.1/userguide/command_line_interface.html#sec:command_line_warnings
    
    BUILD FAILED in 7s
    30 actionable tasks: 6 executed, 24 up-to-date
    

    It points to my MainActivity class which is unaltered and doesn't seem to have any errors or typos for that matter. I'm pretty much sure that the kapt annotation processor does some dirty job here that I do not seem to figure out.

    enter image description here

    I will be greatly relieved if I could get past this weird error.

    Additional note:

    1. I have separated my entire project into three modules. All three got kapt plugin (just incase)

    2. I use Koin for DI

    Hope someone will help me out!

    • Shahab Saalami
      Shahab Saalami over 3 years
      Check your Dao classes. When converted from java, may make mistake with methods that names start with "get"
  • M.Fakhri
    M.Fakhri over 3 years
    Actually this is important point nobody can notice it, I had this problem and searched a lot until I found this answer.. thanks bro
  • Abhinav Chauhan
    Abhinav Chauhan over 3 years
    great i had the same problem, tnx