Se aplica el complemento Hilt Android Gradle, pero no se encontró ninguna dependencia de com.google.dagger:hilt-android-compiler

3 minutos de lectura

Recibo el error “El complemento Hilt Android Gradle se aplica pero no com.google.dagger:hilt-android-compiler se encontró la dependencia.” mientras se construía el proyecto.

Así es como estoy agregando empuñadura a mi proyecto.

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

avatar de usuario
Taki

Supongo que te estás perdiendo esta dependencia.

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

* Primero agregue el complemento

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

*En segundo lugar agregar las dependencias

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

* En tercer lugar, agregue el classpath

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

PD: si está usando java, reemplace kapt con annotationProcessor

  • Agregué la dependencia que dijiste con androidProcessors ya que estoy usando Java, pero después de eso no encontré el método Gradle DSL: androidProcessors(). Entonces reemplazando el androidProcessors con annotationProcessor trabajó para mi. Gracias.

    – Feroz Kan

    13 de julio de 2020 a las 19:32

  • mi error, sí, se suponía que debía decir anotationProcessor, lo siento y me alegro de que te haya funcionado, buena suerte

    – Taki

    13 de julio de 2020 a las 19:34

  • ¿Se requiere realmente Dagger core y Dagger Android al implementar Hilt?

    – artenson.art98

    27 de diciembre de 2021 a las 8:24

avatar de usuario
una carrera

En caso de que esté utilizando esta dependencia del compilador:

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

Solo cámbialo a:

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

Mi problema fue que usé una sintaxis de dependencia incorrecta cuando intenté agregar la dependencia de Hilt a la raíz build.gradle en el proyecto usando la nueva sintaxis de Gradle id 'pluginId' version 'pluginVersion»' [apply false]

En vez de

buildscript {
    ...
    dependencies {
        ....
        classpath 'com.google.dagger:hilt-android-gradle-plugin:2.41'
    }
}

solía

plugins {
    ...
    id 'com.google.dagger.hilt.android' version '2.41' apply false
}

  • Además, para definir dependencias comunes como solíamos hacer con las extensiones globales, solo necesitamos definirlas en gradle.properties y podrían compartirse fácilmente entre el proyecto y el módulo.

    – Kashif K.

    30 de mayo a las 19:20

avatar de usuario
Anand M José

Mantener como es,

apply plugin: 'kotlin-kapt' o

plugins {
    id 'kotlin-kapt'
}

Esto solucionará tu problema.

build.gradle (proyecto)

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

Por mucho que apliquemos el plugin, si no se aplican las siguientes dependencias se obtiene el error

build.gradle (:aplicación)

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

  • Después de agregar dependencias, el problema desapareció

    – UdaraWanasinghe

    7 jun a las 10:44

avatar de usuario
KE Keronei

En algunos escenarios que he encontrado, tengo un proyecto en ejecución en una de mis estaciones de trabajo, pero cuando pago en otra máquina, aparece este problema.

Es porque se aplica el complemento empuñadura de Android, pero la obtención de las dependencias aún no ha llegado a la sección para descargar la dependencia del compilador.

Una solución simple es comentar el id(BuildPlugins.hiltPlugin) si estás usando plugins{} o apply plugin BuildPlugins.hiltPluginintente sincronizar nuevamente, luego, una vez que tenga una compilación exitosa (con problemas de empuñadura, pero la dependencia requerida se ha descargado), puede descomentar la línea y sincronizar.

Nota: BuildPlugins en este caso es un objeto que contiene mis definiciones de complementos.

  • Después de agregar dependencias, el problema desapareció

    – UdaraWanasinghe

    7 jun a las 10:44

avatar de usuario
Vacío

O resolvió el mío agregando las siguientes dependencias

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

¿Ha sido útil esta solución?