J'utilise Android Studio 2.2 Preview 7, et le plugin Lombok a soudainement commencé à dire: Annotation processing seems to be disabled for the project X
, et fournissant un lien vers les paramètres.
Le fait de cliquer sur la notification ne me mène pas au bon endroit.
Quelle est la solution pour cela?
Les paramètres ouverts en cliquant sur la notification sont les Per Project
_ paramètres, et ceux-ci ne sont pas ce dont vous avez besoin dans ce cas.
Pour résoudre ce problème, allez à
File->Other Settings->Default Settings
Build, Execution, Deployment
Compiler
Annotation Processors
vérifier Enable annotation processing
Pour une référence complète - capture d'écran avec l'écran de réglages approprié:
Avec les versions plus récentes de gradle, il suffit de taper ces lignes dans le bloc de dépendances build.gradle de l'application:
compile "org.projectlombok:lombok:1.16.16"
annotationProcessor "org.projectlombok:lombok:1.16.16"
Synchronisez le projet avec le diplôme et cela fonctionnera.
Premièrement, je ne pense pas que le fait de retirer votre projet de l'écran d'accueil puisse avoir un effet. Pensez-y, supprimer votre projet des "projets récents" sur cet écran ne le recrée pas, comment la modification des paramètres par défaut pourrait-elle avoir un effet sur n projet existant?
Pour activer le traitement des annotations dans un projet existant, vous n'avez rien à supprimer. Aller à YourAwesomeProject/.idea/compiler.xml
et assurez-vous que vous avez la valeur "true" dans l'attribut suivant: /project/annotationProcessing/profile@enabled
.
Comme ça:
<?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>
Vous devrez peut-être Fichier -> Invalider caches/redémarrer
Pour ceux qui ont le même problème en utilisant Android Studio 2.4+, ce n'est pas résolu par les astuces ci-dessus, à l'exception de la réponse de Janis Peisenieks.
Ouvrez votre Intellij IDEA 2017/Android Studio 2.4+ et accédez à (Windows)
Enfin, mettez à jour le fichier build.gradle de votre projet avec l'extrait de code ci-dessous. Ignore le conseil qu'il est déconseillé, car il n'utilise pas (jusqu'à présent. Voir issue ).
defaultConfig {
javaCompileOptions {
annotationProcessorOptions {
includeCompileClasspath = true
}
}
}
Découvert qu'il existe un moyen très simple de procéder sans toutes les modifications ci-dessus!
Si vous configurez votre processeur dans le dégradé comme lombok, vous n’utiliserez que fourni ou testCompile . Vous devez ajouter ceci en utilisant annotationProcessor ainsi que dans vos dépendances. Exemple:
dependencies {
provided "org.projectlombok:lombok:1.16.16"
annotationProcessor "org.projectlombok:lombok:1.16.16"
}
Merci à Jack Wharton pour butterknife où j’ai compris comment il l’a résolu.
Astuce : Vous devrez peut-être invalider le cache et le redémarrer pour le faire fonctionner pour certains processeurs d'annotation tels que lombok.
La réponse marquée était probablement suffisante à l'époque mais je me suis un peu battu avec Android studio 3 et lombok 1.16.18. Quoi qu'il en soit, la suite a fonctionné pour moi.
dans app
> build.gradle
ajouter les suivants
compileOnly 'org.projectlombok:lombok:1.16.18'
annotationProcessor 'org.projectlombok:lombok:1.16.18'
vous pouvez commencer à avoir d'autres erreurs, donc si vous dans votre MyApplication
> lombok.config
ajouter les lignes suivantes
lombok.addGeneratedAnnotation = false
lombok.anyConstructor.suppressConstructorProperties = true
si vous n'avez pas lombok.config
vient de l'ajouter
Les propositions ci-dessus ont été suggérées par le développeur de lombok dans les articles suivants
addGeneratedAnnotation
suppressConstructorProperties
Le guide d'installation du site Web de Lombok ( lombok configuré pour Android ) indique que nous devrions faire deux choses.
1, installez le plugin Lombok
2, ajouter des dépendances de niveaux
dependencies { compileOnly 'org.projectlombok:lombok:1.18.6' annotationProcessor 'org.projectlombok:lombok:1.18.6' }
Mais pour moi, le plugin provoque le problème. Après avoir désactivé le plugin, l'erreur a disparu et Lombok fonctionne toujours.
Suivez ce que dit le manuel d'installation:
Gradle Assurez-vous que la version de votre Android plug-in est> = 0.4.3. Utilisez le plug-in gradle-lombok. Si vous ne souhaitez pas utiliser le plug-in, ajoutez Lombok au bloc des dépendances de votre application. (requiert Gradle v2.12 ou plus récent):
dependencies { compileOnly "org.projectlombok:lombok:1.16.18" }
Android Studio Suivez les instructions précédentes (Gradle). En plus de configurer correctement votre projet Gradle, vous devez ajouter le plug-in Lombok IntelliJ pour ajouter la prise en charge de Lombok à Android Studio:
- Allez dans Fichier> Paramètres> Plugins
- Cliquez sur Parcourir les dépôts ...
- Recherche de plugin Lombok
- Cliquez sur le plug-in Installer Redémarrer Android Studio
À partir de Android Studio v3.5 (août 2019) et les versions antérieures, il n'y avait pas de paramètre pour le processeur d'annotation. Il suffit toutefois de définir dans build.gradle dans la section des dépendances:
dependencies {
...
compileOnly 'org.projectlombok:lombok:1.18.8'
annotationProcessor 'org.projectlombok:lombok:1.18.8'
...
}
Si Android studio se plaint toujours de "Lombok nécessite le traitement des annotations", pour moi, le problème est la réinstallation du plug-in Lombok et "Invalidate Caches/Restart".