Cuando estoy usando Hilt en Android con Room
Recibí este tipo de error.
El registro completo está aquí:
home/someone/Desktop/Calculator/app/build/tmp/kapt3/stubs/debug/com/hamidjonhamidov/calculator/MyApplication.java:7: error: [Hilt]
public class MyApplication extends android.app.Application {
^
Expected @HiltAndroidApp to have a value. Did you forget to apply the Gradle Plugin?
[Hilt] Processing did not complete. See error above for details./home/someone/Desktop/Calculator/app/build/tmp/kapt3/stubs/debug/com/hamidjonhamidov/calculator/ui/main/MainActivity.java:7: error: [Hilt]
Alguien sabe solución para esto?
señor wil
Tuve este problema después de actualizar Kotlin a 1.5.20.
agregando kapt.use.worker.api=false
en gradle.properties funcionó para mí el problema
Verificar problema de la daga Compatibilidad con Kotlin 1.5.20
-
Esto funcionará, pero verifique la respuesta de Ali Zarei antes de hacer esto: stackoverflow.com/a/68233842/1118475
– Michał Klimczak
14 de julio de 2021 a las 9:10
-
¡Acepta esta respuesta! esto funciona para mi
– fahrizal89
22 de enero de 2022 a las 16:27
Khamidjon Khamidov
Afortunadamente, hay una solución simple. En build.gradle
en el esquema de la base de datos, debemos usar arguments +=
en lugar de arguments =
.
defaultConfig{
javaCompileOptions {
annotationProcessorOptions {
arguments += ["room.schemaLocation": "$projectDir/schemas".toString()]
}
}
}
o/y en buld.gradle
Deberías aplicar un complemento como:
apply plugin 'dagger.hilt.android.plugin'
Esto resolvió el problema)
-
Me salvaste la vida usando “+=”, MUCHAS GRACIAS.
– Raúl
2 de junio de 2021 a las 17:33
Ali Zarei
ACTUALIZAR
Actualice Hilt a v28.1.0 y Kotlin a v1.5.21 debería solucionar este problema
RESPUESTA ANTIGUA
Si está en kotlin 1.5.20, responda de Mr-wil
disminuirá la velocidad de construcción como se dijo en documento oficial:
Para mejorar la velocidad de las compilaciones que usan kapt, puede habilitar la API del trabajador de Gradle para las tareas de kapt. El uso de la API de trabajador permite que Gradle ejecute tareas de procesamiento de anotaciones independientes desde un solo proyecto en paralelo, lo que en algunos casos reduce significativamente el tiempo de ejecución.
En su lugar, establezca:
kapt {
javacOptions {
// These options are normally set automatically via the Hilt Gradle plugin, but we
// set them manually to workaround a bug in the Kotlin 1.5.20
option("-Adagger.fastInit=ENABLED")
option("-Adagger.hilt.android.internal.disableAndroidSuperclassValidation=true")
}
}
Este mensaje de error genérico también puede aparecer en muchas circunstancias. Como verificación más genérica, asegúrese de que su módulo build.gradle
archivo, asegúrese de tener:
apply plugin: 'dagger.hilt.android.plugin'
en la cima.
Esto se debió a un bicho en Kotlin 1.5.20. Está fijado en Kotlin 1.5.21.
Entonces, todo lo que necesita hacer es actualizar a la última versión de Kotlin.
-
actualizar a kotlin 1.5.21 y hilt 2.37 no resuelve el problema
– oye
3 de agosto de 2021 a las 3:04
-
Resolvió mi problema, gracias
– Paras Dhawan
22 de septiembre de 2021 a las 9:56
-
Resolvió mi problema, gracias
– Hossam elsawy
5 de febrero de 2022 a las 13:00
Vijay
Tuve el mismo problema y parece que hay un problema en el complemento kotlin-kapt. Si han probado todas las respuestas anteriores y no se resolvieron, intente con el siguiente código en su build.gradle (nivel de módulo) fuera del bloque de dependencias{}
kapt {
javacOptions {
option("-Adagger.hilt.android.internal.disableAndroidSuperclassValidation=true")
}
}
-
actualizar a kotlin 1.5.21 y hilt 2.37 no resuelve el problema
– oye
3 de agosto de 2021 a las 3:04
-
Resolvió mi problema, gracias
– Paras Dhawan
22 de septiembre de 2021 a las 9:56
-
Resolvió mi problema, gracias
– Hossam elsawy
5 de febrero de 2022 a las 13:00
raditya gumay
en el build.gradle de sus módulos Android Gradle aplique el complemento:
apply plugin: 'com.android.application'
apply plugin: 'dagger.hilt.android.plugin'
android {
// ...
}
ver detalle aquí