Lombok Nécessite Un Traitement D'Annotation

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 de fournir un lien vers les paramètres.

enter image description here

Cliquer sur la notification ne me prends pas au bon endroit.

Quelle est la solution à ce?

24
demandé sur Janis Peisenieks 2016-08-12 10:05:37
la source

6 ответов

les paramètres ouverts en cliquant sur la notification sont les Per Project paramètres, et ce ne sont pas ce dont vous avez besoin dans ce cas.

Pour résoudre ce problème, accédez à

  • File->Other Settings->Default Settings
  • Développez Build, Execution, Deployment
  • Développez Compiler
  • Annotation Processors case Enable annotation processing
  • vous devrez peut-être rouvrir le projet pour que les paramètres prennent effet.
  • Profitez de

pour référence complète - screenshot avec écran des paramètres appropriés: enter image description here

57
répondu Janis Peisenieks 2016-08-12 10:05:37
la source

tout d'abord, je ne pense pas que retirer votre projet de l'écran d'accueil puisse avoir un quelconque effet. Pensez-y, supprimer votre projet de "projets récents" sur cet écran ne le recréera pas, comment changer les paramètres par défaut pourrait-il avoir un effet sur un projet existant?

pour activer le traitement d'annotation dans un projet existant, vous n'avez pas besoin de supprimer quoi que ce soit. Accédez à YourAwesomeProject/.idea/compiler.xml et assurez-vous d'avoir la valeur " true" dans l'attribut suivant: /project/annotationProcessing/[email protected].

Comme ceci:

<?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 pourriez avoir besoin de Fichier -> Invalider Les Caches / Restart

13
répondu Jaroslav Záruba 2017-04-17 14:08:55
la source

avec les nouvelles versions de gradle, il suffit de taper ces lignes dans la compilation de l'application.bloc de dépendances de gradle`'

compile "org.projectlombok:lombok:1.16.16"
annotationProcessor "org.projectlombok:lombok:1.16.16"  

synchroniser le projet avec le Grad et ça va marcher.

11
répondu Andras Kloczl 2017-06-19 18:45:53
la source

pour ceux qui ont le même problème en utilisant Android Studio 2.4+ il n'est pas résolu en faisant tous les conseils ci-dessus sauf Janis Peisenieks réponse.

Ouvrir votre Intellij IDEA 2017 / Android Studio 2.4+ et aller à (Windows)

  1. Fichier->Autres Paramètres->Paramètres Par Défaut
  2. Développez Construire, L'Exécution, Le Déploiement
  3. Développez Compilateur et choisissez Processeurs D'Annotation
  4. assurez-vous que vous activer le traitement des annotations et "obtenir les processeurs de project classpath" activé
  5. dernière mais non des moindres, mettez à jour vos projets de construction.fichier gradle avec l'extrait ci-dessous. Ignorez l'allusion que son déprécié, depuis qu'il n'utilise pas (jusqu'à présent. Voir problème).

    defaultConfig {
        javaCompileOptions {
            annotationProcessorOptions {
                includeCompileClasspath = true
            }
        }
    }
    

Trouvé qu'il existe une façon très simple de le faire sans tous ces changements ci-dessus!

si vous définissez votre processeur dans le Grad comme lombok que vous n'utiliserez pas seulement condition ou testCompile. Vous devez ajouter ceci en utilisant Annotation processor 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 trouvé comment il l'a résolu.

Indice: vous pouvez avoir besoin d'invalider le cache et de le redémarrer pour le faire fonctionner pour certains processeurs d'annotation comme lombok.

6
répondu Emanuel S 2017-04-17 12:40:17
la source

réponse probablement marquée était suffisante à l'époque mais j'ai eu un peu de mal avec android studio 3 et lombok 1.16.18. Quoi qu'il en soit suivi a fonctionné pour moi

app > build.gradle ajouter ce qui suit

compileOnly 'org.projectlombok:lombok:1.16.18'
annotationProcessor 'org.projectlombok:lombok:1.16.18'

vous pouvez commencer à obtenir d'autres erreurs, donc si vous avez dans votre MyApplication>lombok.config ajouter les lignes suivantes

lombok.addGeneratedAnnotation = false
lombok.anyConstructor.suppressConstructorProperties = true

si vous n'avez pas lombok.config juste ajouté ça

ci-dessus ont été suggérés par le développeur de lombok dans la suite posts

add generatedannotation

suppressconstructor properties

2
répondu Mubashar Ahmad 2018-04-28 07:30:13
la source

suivez ce que dit le manuel de configuration:

Gradle assurez-vous que la version de votre plugin android est >= 0.4.3 Utilisez le plugin gradle-lombok. Si vous ne voulez pas utiliser le plugin, ajouter Lombok au bloc des dépendances de votre application (nécessite Gradle v2.(12) ou plus récent):

dependencies {    
 compileOnly "org.projectlombok:lombok:1.16.18" 
}

Android Studio suivez les instructions précédentes (Gradle). Outre pour configurer correctement votre projet gradle, vous devez ajouter Plugin Lombok IntelliJ à ajouter soutien de lombok à Android Studio:

  1. Allez dans Fichier > Paramètres > Plugins
  2. cliquez sur Parcourir les dépôts...
  3. recherche de Plugin Lombok
  4. cliquez sur installer le plugin redémarrer Android Studio

https://projectlombok.org/setup/android

0
répondu MSS 2017-11-29 23:12:10
la source