Après la mise à niveau vers Gradle 4.7, ma version précédente, sans avertissement, émet maintenant cet avertissement:
Les processeurs d'annotation suivants ont été détectés sur le chemin de classe de compilation: 'lombok.launch.AnnotationProcessorHider $ AnnotationProcessor' et 'lombok.launch.AnnotationProcessorHider $ ClaimingProcessor'. La détection des processeurs d'annotation sur le chemin de classe de compilation est déconseillée et Gradle 5.0 les ignorera. Ajoutez-les plutôt au chemin du processeur d'annotation. Si vous n'aviez pas l'intention d'utiliser les processeurs d'annotation, vous pouvez utiliser l'argument du compilateur '-proc: none' pour les ignorer.
Il semble que les processeurs d'annotation soient obsolètes et gradle version 5.0 ne les supportera pas.
Mon projet utilise lombok, qui nécessite des processeurs d'annotation, donc -proc:none
n'est pas une option. Ni arrêter d'utiliser Gradle lorsque verison 5.0 est publié.
Comment puis-je:
Changez le type de dépendance de lombok de compile
en annotationProcessor
, ainsi votre section de dépendances dans votre build.gradle
fichier devrait ressembler à:
dependencies {
compileOnly('org.projectlombok:lombok:1.16.20')
annotationProcessor 'org.projectlombok:lombok:1.16.20'
// compile 'org.projectlombok:lombok:1.16.20' <-- this no longer works!
// other dependencies...
}
Si votre projet contient des tests, vous aurez besoin de la configuration suivante pour vous débarrasser complètement de l'avertissement de gradle:
dependencies {
compileOnly "org.projectlombok:lombok:1.18.2"
testCompileOnly "org.projectlombok:lombok:1.18.2"
annotationProcessor "org.projectlombok:lombok:1.18.2"
testAnnotationProcessor "org.projectlombok:lombok:1.18.2"
}
Ajustez la version de lombok en fonction.
Gradle a ajouté annotationProcessor en 4.6 et Lombok est un processeur d'annotation même si leur documentation n'est pas très claire à ce sujet lors de l'utilisation de Gradle, ils en sont également conscients, car ils le recommandent lors de l'utilisation de Android Studio . Si courte réponse est d'utiliser:
dependencies {
compileOnly('org.projectlombok:lombok:1.18.0')
annotationProcessor('org.projectlombok:lombok:1.18.0')
}