35

我收到错误消息“应用了 Hilt Android Gradle 插件,但未com.google.dagger:hilt-android-compiler找到依赖项。” 在构建项目时。

这是我如何将刀柄添加到我的项目中。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

4

5 回答 5

37

我猜你错过了这个依赖

kapt "com.google.dagger:hilt-android-compiler:2.28-alpha"

*首先添加插件

apply plugin: 'dagger.hilt.android.plugin'

*其次添加依赖

// Dagger Core
implementation "com.google.dagger:dagger:2.37"
kapt "com.google.dagger:dagger-compiler:2.37"

// Dagger Android
api 'com.google.dagger:dagger-android:2.37'
api 'com.google.dagger:dagger-android-support:2.37'
kapt 'com.google.dagger:dagger-android-processor:2.37'

// Dagger - Hilt
implementation "com.google.dagger:hilt-android:2.37"
kapt "com.google.dagger:hilt-android-compiler:2.37"

*第三次添加类路径

classpath "com.google.dagger:hilt-android-gradle-plugin:2.28-alpha"

PS:如果您使用 java 替换 kapt 为 annotationProcessor

于 2020-07-13T19:22:47.647 回答
17

如果您使用此编译器依赖项:

"com.google.dagger:hilt-compiler:$hilt_version"

只需将其更改为:

"com.google.dagger:hilt-android-compiler:$hilt_version"
于 2021-07-03T07:37:33.227 回答
4

保持原样,

应用插件:'kotlin-kapt' 或 plugins { id 'kotlin-kapt' }

这将解决您的问题

于 2021-03-28T20:12:23.807 回答
1

build.gradle(项目)

buildscript {
    dependencies {
        classpath 'com.android.tools.build:gradle:7.0.4'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.google.dagger:hilt-android-gradle-plugin:2.38.1'
    }
}

不管我们应用多少插件,如果没有应用下面的依赖,就会报错

build.gradle (:app)

plugins {
    ...
    id 'kotlin-kapt'
    id 'dagger.hilt.android.plugin'
}

dependencies {
    implementation "com.google.dagger:hilt-android:2.28-alpha"
    kapt "com.google.dagger:hilt-android-compiler:2.28-alpha"
}
于 2022-01-05T21:37:04.030 回答
0

O 通过添加以下依赖项解决了我的问题

// Dagger & Hilt
implementation("com.google.dagger:hilt-android:2.40")
kapt("com.google.dagger:hilt-android-compiler:2.40")
implementation("androidx.hilt:hilt-common:1.0.0")
kapt("androidx.hilt:hilt-compiler:1.0.0")
implementation("androidx.hilt:hilt-navigation-fragment:1.0.0")
implementation("androidx.hilt:hilt-work:1.0.0")
于 2021-10-30T21:33:06.603 回答