找不到 Glide 的方法 kapt()

Posted

技术标签:

【中文标题】找不到 Glide 的方法 kapt()【英文标题】:Could not find method kapt() for Glide 【发布时间】:2019-03-05 22:36:26 【问题描述】:
apply plugin: 'com.google.gms.google-services'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'

classpath 'com.android.tools.build:gradle:3.2.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.61"

我有上面的 gradle 配置,但我仍然得到

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

谁能告诉我哪里出错了?提前感谢您的帮助

【问题讨论】:

【参考方案1】:

项目级build.gradle:

buildscript 
    repositories 
        mavenCentral()
        jcenter()
        google()
    
    dependencies 
        classpath "com.android.tools.build:gradle:3.3.2"
        classpath "com.google.gms:google-services:4.2.0"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.70"
    

模块级build.gradle:

apply plugin: "kotlin-android"
apply plugin: "kotlin-android-extensions"
apply plugin: "kotlin-kapt"
...
android 

 
dependencies 
    implementation "com.github.bumptech.glide:glide:4.8.0"
    // annotationProcessor "com.github.bumptech.glide:compiler:4.8.0"
    kapt "com.github.bumptech.glide:compiler:4.8.0"

...
apply plugin: "com.google.gms.google-services"

【讨论】:

【参考方案2】:
plugins 
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-android-extensions'
    id 'kotlin-kapt' // add this line in file build.gradle (Module : YourAppName)

【讨论】:

【参考方案3】:

应用必须在对我有用的插件下

plugins 
    id 'com.android.application'
    id 'kotlin-android'

apply plugin: "kotlin-android-extensions"
apply plugin: 'kotlin-kapt'

在另一个 build.grandle 中:

buildscript 
    ext.kotlin_version="1.4.0"
    repositories 
        google()
        mavenCentral()
    
    dependencies 
        classpath 'com.android.tools.build:gradle:7.0.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
    

【讨论】:

【参考方案4】:

我认为kapt 可以在Glide 的新版本中使用,所以请尝试添加:

kapt 'com.github.bumptech.glide:compiler:4.8.0'

在您的Build.gradle 依赖项when using Kotlin 中。

注意,Glide 依赖应该和编译器版本一致:

dependencies 
    implementation 'com.github.bumptech.glide:glide:4.8.0'
    kapt 'com.github.bumptech.glide:compiler:4.8.0'

或者,尝试将您的 Kotlin 更新为 v1.2.71

buildscript 

    ext.kotlin_version = '1.2.71'



 dependencies 
        classpath 'com.android.tools.build:gradle:3.2.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

在根目录中 Build.gradle。这应该可以。

【讨论】:

尝试使用 Glide 4.8.0 也遇到了同样的错误。 尝试将您的 kotlin 更新到 v1.2.71,然后看看会发生什么?检查我更新的答案。

以上是关于找不到 Glide 的方法 kapt()的主要内容,如果未能解决你的问题,请参考以下文章

即使使用 kapt,房间也“找不到实现”

Glide 4.12.0 找不到 GeneratedAppGlideModule

Django - 找不到静态文件

Android assets 找不到文件异常 FileNotFoundException

java运行程序找不到main方法

找不到引用的类/找不到引用的方法