Could not find method kapt() for arguments

36,851

Solution 1

In my case,I was missing

apply plugin: 'kotlin-kapt'

Hope it helps someone as blind as me.

Solution 2

Here is a working solution for the latest version of android studio instead of apply plugin use id 'kotlin-kapt' inside plugins.

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

Solution 3

So you also forgot to add

apply plugin: 'kotlin-kapt'
apply plugin: 'dagger.hilt.android.plugin'

in app level gradel file. Nice.

Solution 4

Use plugin with this order,

apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
apply plugin:  'kotlin-android'
apply plugin: 'kotlin-kapt'
apply plugin: 'dagger.hilt.android.plugin'
Share:
36,851
O.AbedElBaset
Author by

O.AbedElBaset

Updated on July 08, 2022

Comments

  • O.AbedElBaset
    O.AbedElBaset almost 2 years

    I'm facing a problem for over 3 days now and I can't solve. since I started to use Kotlin for Android,I stopped using "annotationProcessor" and started using "kapt", all things were working great with kapt until I started to build an Android Instant App, when I add "kapt" to any dependency like Glide or ButterKnife Gradle always displaying error that cound't find method kapt()

    Could not find method kapt() for arguments [com.github.bumptech.glide:compiler:4.7.1] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.
    

    Here are my project Gradle files

    Project gradle file

    // Top-level build file where you can add configuration options common to all sub-projects/modules.
    
    buildscript {
        ext.kotlin_version = '1.2.71'
        repositories {
            google()
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.2.1'
            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    
            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }
    }
    
    allprojects {
        repositories {
            google()
            jcenter()
        }
    }
    
    task clean(type: Delete) {
        delete rootProject.buildDir
    }
    

    app module gradle file

    apply plugin: 'com.android.application'
    apply plugin: 'kotlin-kapt'
    
    android {
        compileSdkVersion 28
    
        defaultConfig {
            applicationId "com.demo.instantapptest.app"
            minSdkVersion 17
            targetSdkVersion 28
            versionCode 1
            versionName "1.0"
    
    
        }
    
        buildTypes {
           release {
               minifyEnabled false
               proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
           }
        }
    
    }
    
    dependencies {
        implementation project(':feature')
        implementation project(':base')
    }
    

    base module gradle file

    apply plugin: 'com.android.feature'
    apply plugin: 'kotlin-kapt'
    
    android {
        compileSdkVersion 28
        baseFeature true
        defaultConfig {
            minSdkVersion 17
            targetSdkVersion 28
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }
    
    dependencies {
        api 'com.android.support:appcompat-v7:28.0.0'
        api 'com.android.support.constraint:constraint-layout:1.1.3'
        application project(':app')
        feature project(':feature')
    
    
        implementation "android.arch.lifecycle:extensions:1.1.1"
        kapt "android.arch.lifecycle:compiler:1.1.1"
    
        implementation 'com.github.bumptech.glide:glide:4.7.1'
        kapt 'com.github.bumptech.glide:compiler:4.7.1'
    
        implementation 'com.google.dagger:dagger:2.15.0'
        kapt 'com.google.dagger:dagger-compiler:2.15.0'
    
        implementation 'com.jakewharton:butterknife:9.0.0-rc2'
        kapt 'com.jakewharton:butterknife-compiler:9.0.0-rc2'
    
    }
    

    feature module gradle file

    apply plugin: 'com.android.feature'
    
    apply plugin: 'kotlin-android'
    
    apply plugin: 'kotlin-android-extensions'
    
    apply plugin: 'kotlin-kapt'
    
    android {
        compileSdkVersion 28
        defaultConfig {
            minSdkVersion 17
            targetSdkVersion 28
            versionCode 1
            versionName "1.0"
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
    }
    
    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
        implementation project(':base')
        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test:runner:1.0.2'
        androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    
    }
    

    instantapp gradle file

    apply plugin: 'com.android.instantapp'
    
    dependencies {
        implementation project(':feature')
        implementation project(':base')
    }
    

    ==========

    Solved

    by adding kotlin-android plugin to the base module

    apply plugin: 'kotlin-android'
    
  • Nagaraj Alagusundaram
    Nagaraj Alagusundaram almost 4 years
    Yes, it worked. This was missing in my old project and I got the same error when migrating to AndroidX. Thanks.
  • Madushan
    Madushan over 3 years
    This happened to me when adding Hilt. Above solution worked
  • CoolMind
    CoolMind about 3 years
    id 'kotlin-kapt'.
  • caly__pso
    caly__pso about 3 years
    Make sure it's at the top of your base module gradle file. Putting it at the bottom doesn't work.