【问题标题】: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 依赖项
【发布时间】:2020-07-13 19:14:44
【问题描述】:

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

以下是我在项目中添加刀柄的方式。

【问题讨论】:

    标签: android gradle dagger-hilt


    【解决方案1】:

    我猜你错过了这个依赖

    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

    【讨论】:

    • 我在使用 Java 时添加了您使用 androidProcessors 告诉的依赖项,但之后我发现 Gradle DSL 方法未找到:androidProcessors()。所以用annotationProcessor 替换androidProcessors 对我有用。谢谢。
    • 我很糟糕,是的,我应该说 annotationProcessor,很抱歉,我很高兴它对你有用,祝你好运
    • 在实现 Hilt 时真的需要 Dagger 内核和 Dagger Android 吗?
    【解决方案2】:

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

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

    只需将其更改为:

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

    【讨论】:

    【解决方案3】:

    保持原样,

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

    这将解决您的问题

    【讨论】:

      【解决方案4】:

      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"
      }
      

      【讨论】:

        【解决方案5】:

        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")
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-09-16
          • 1970-01-01
          • 1970-01-01
          • 2016-02-10
          • 1970-01-01
          • 2015-12-20
          • 2022-12-20
          • 1970-01-01
          相关资源
          最近更新 更多