应用了 Hilt Android Gradle 插件,但未找到 com.google.dagger:hilt-android-compiler 依赖项
The Hilt Android Gradle plugin is applied but no com.google.dagger:hilt-android-compiler dependency was found
我收到错误消息“已应用 Hilt Android Gradle 插件,但未找到 com.google.dagger:hilt-android-compiler
依赖项。”在构建项目时。
以下是我如何将刀柄添加到我的项目中。
我猜你错过了这个依赖关系
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
保持原样,
apply plugin: 'kotlin-kapt'
或
plugins {
id 'kotlin-kapt'
}
这将解决您的问题
如果您使用此编译器依赖项:
"com.google.dagger:hilt-compiler:$hilt_version"
只需将其更改为:
"com.google.dagger:hilt-android-compiler:$hilt_version"
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")
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"
}
在我遇到的某些情况下,我的一个工作站上有一个 运行 项目,但是当我在另一台机器上结帐时,它会带来这个问题。
因为应用了hiltandroid插件,但是获取依赖还没有到下载编译依赖的部分
如果您使用 plugins{}
或 apply plugin BuildPlugins.hiltPlugin
,一个简单的解决方法是注释掉 id(BuildPlugins.hiltPlugin)
,尝试再次同步,然后一旦您成功构建(有刀柄问题- 但已下载所需的依赖项),您可以 un-comment 线路和同步。
注意:在这种情况下,BuildPlugins 是一个包含我的插件定义的对象。
我的问题是,当我尝试使用新的 Gradle 语法 id 'pluginId' version 'pluginVersion»' [apply false]
将 Hilt 依赖项添加到项目中的根 build.gradle
时,我使用了不正确的依赖项语法
而不是
buildscript {
...
dependencies {
....
classpath 'com.google.dagger:hilt-android-gradle-plugin:2.41'
}
}
我用过
plugins {
...
id 'com.google.dagger.hilt.android' version '2.41' apply false
}
我收到错误消息“已应用 Hilt Android Gradle 插件,但未找到 com.google.dagger:hilt-android-compiler
依赖项。”在构建项目时。
以下是我如何将刀柄添加到我的项目中。
我猜你错过了这个依赖关系
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
保持原样,
apply plugin: 'kotlin-kapt'
或
plugins {
id 'kotlin-kapt'
}
这将解决您的问题
如果您使用此编译器依赖项:
"com.google.dagger:hilt-compiler:$hilt_version"
只需将其更改为:
"com.google.dagger:hilt-android-compiler:$hilt_version"
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")
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"
}
在我遇到的某些情况下,我的一个工作站上有一个 运行 项目,但是当我在另一台机器上结帐时,它会带来这个问题。
因为应用了hiltandroid插件,但是获取依赖还没有到下载编译依赖的部分
如果您使用 plugins{}
或 apply plugin BuildPlugins.hiltPlugin
,一个简单的解决方法是注释掉 id(BuildPlugins.hiltPlugin)
,尝试再次同步,然后一旦您成功构建(有刀柄问题- 但已下载所需的依赖项),您可以 un-comment 线路和同步。
注意:在这种情况下,BuildPlugins 是一个包含我的插件定义的对象。
我的问题是,当我尝试使用新的 Gradle 语法 id 'pluginId' version 'pluginVersion»' [apply false]
build.gradle
时,我使用了不正确的依赖项语法
而不是
buildscript {
...
dependencies {
....
classpath 'com.google.dagger:hilt-android-gradle-plugin:2.41'
}
}
我用过
plugins {
...
id 'com.google.dagger.hilt.android' version '2.41' apply false
}