android-studio - intellij - lombok plugin eclipse
Lombok requiere el procesamiento de anotaciones (6)
Estoy usando Android Studio 2.2 Preview 7, y el complemento de Lombok de repente comenzó a decir: el Annotation processing seems to be disabled for the project X
y proporciona un enlace a la configuración.
Hacer clic en la notificación no me lleva al lugar correcto.
¿Cuál es la solución para esto?
Con las nuevas versiones de gradle, es suficiente escribir estas líneas en el bloque de dependencias de build.gradle de la aplicación: `
compile "org.projectlombok:lombok:1.16.16"
annotationProcessor "org.projectlombok:lombok:1.16.16"
Sincroniza el proyecto con el gradle y funcionará.
En primer lugar, no creo que eliminar su proyecto de la pantalla de bienvenida pueda tener ningún efecto. Solo piénselo, eliminar su proyecto de "proyectos recientes" en esa pantalla no lo recrea, ¿cómo podría cambiar la configuración predeterminada tener algún efecto en un proyecto existente?
Para habilitar el procesamiento de anotaciones en un proyecto existente, no necesita eliminar nada. Vaya a YourAwesomeProject/.idea/compiler.xml
y asegúrese de tener el valor " true " en el siguiente atributo: /project/annotationProcessing/profile@enabled
.
Me gusta esto:
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
...
<annotationProcessing>
<profile default="true" name="Default" enabled="true"><!-- here -->
<processorPath useClasspath="true" />
</profile>
</annotationProcessing>
</component>
</project>
Es posible que necesite Archivo -> Invalidar cachés / Reiniciar
Las configuraciones abiertas al hacer clic en la notificación son las configuraciones Per Project
, y esas no son las que necesita en este caso.
Para arreglar esto, ve a
-
File->Other Settings->Default Settings
- Expandir
Build, Execution, Deployment
- Expandir
Compiler
- En
Annotation Processors
activeEnable annotation processing
- Es posible que deba volver a abrir el proyecto para que la configuración tenga efecto.
- Disfrutar
Para referencia completa - captura de pantalla con la pantalla de configuración apropiada
Para aquellos que tienen el mismo problema con Android Studio 2.4 o superior, no se resuelve haciendo las sugerencias anteriores, excepto la respuesta de Janis Peisenieks.
Abra su Intellij IDEA 2017 / Android Studio 2.4+ y vaya a (Windows)
- Archivo-> Otras configuraciones-> Configuraciones predeterminadas
- Expandir Construcción, Ejecución, Despliegue
- Expandir el compilador y elegir procesadores de anotación
- Asegúrese de tener habilitado el procesamiento de anotaciones y " Obtener procesadores de la ruta de clase del proyecto " habilitado
Por último, pero no menos importante, actualice el archivo build.gradle de su proyecto con el siguiente fragmento de código. Ignore la sugerencia de que está en desuso, ya que no está utilizando (hasta ahora. Vea el issue ).
defaultConfig { javaCompileOptions { annotationProcessorOptions { includeCompileClasspath = true } } }
¡Descubrí que hay una manera muy simple de hacer esto sin todos los cambios anteriores!
Si configura su procesador en el gradle como lombok, no usará solo el comando proporcionado o testCompile . Debe agregar esto usando annotationProcessor también en sus dependencias. Ejemplo:
dependencies {
provided "org.projectlombok:lombok:1.16.16"
annotationProcessor "org.projectlombok:lombok:1.16.16"
}
Gracias a Jack Wharton por Butterknife, donde descubrí cómo lo resolvió.
Sugerencia : es posible que deba invalidar el caché y reiniciarlo para que funcione para algunos procesadores de anotaciones como lombok.
Probablemente la respuesta marcada fue suficiente en ese momento, pero tuve problemas con Android Studio 3 y lombok 1.16.18. De todas formas las siguientes me funcionaron
en la app
> build.gradle
agregar siguiente
compileOnly ''org.projectlombok:lombok:1.16.18''
annotationProcessor ''org.projectlombok:lombok:1.16.18''
puede comenzar a recibir otros errores, por lo tanto, si en su MyApplication
> lombok.config
agrega las siguientes líneas
lombok.addGeneratedAnnotation = false
lombok.anyConstructor.suppressConstructorProperties = true
si no tienes lombok.config
solo lo agregaste
Los anteriores fueron sugeridos por el desarrollador de lombok en las siguientes publicaciones.
addGeneratedAnnotation
suppressConstructorProperties
Siga lo que dice el manual de configuración:
Gradle Asegúrese de que la versión de su complemento para Android es> = 0.4.3 Use el complemento gradle-lombok. Si no desea usar el complemento, agregue Lombok al bloque de dependencias de su aplicación (requiere Gradle v2.12 o más reciente):
dependencies { compileOnly "org.projectlombok:lombok:1.16.18" }
Android Studio Siga las instrucciones anteriores (Gradle). Además de configurar su proyecto de Gradle correctamente, debe agregar el plugin Lombok IntelliJ para agregar soporte lombok a Android Studio:
- Ir a Archivo> Configuración> Complementos
- Haga clic en Examinar repositorios ...
- Buscar Lombok Plugin
- Haga clic en Instalar complemento Reiniciar Android Studio