web-dev-qa-db-fra.com

lombok.javac.apt.LombokProcessor n'a pas pu être initialisé

ma question concerne un peu ce post: La construction de Gradle échoue sur les classes annotées de Lombok J'utilise jhipster et lombok 1.16.18 avec un build.gradle comme suit

...
apply plugin: 'net.ltgt.apt'
...
dependencies {
    provided "org.projectlombok:lombok:${lombok_version}"
    apt "org.projectlombok:lombok:${lombok_version}"
}
...

mais obtenez l'erreur suivante pendant compileJava:

warning: lombok.javac.apt.LombokProcessor could not be initialized. 
Lombok will not run during this compilation: 
Java.lang.IllegalArgumentException: com.Sun.tools.javac.api.ClientCodeWrapper$WrappedStandardJavaFileManager extends com.Sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileManager implements javax.tools.StandardJavaFileManager

Qu'est-ce que j'oublie ici?

3
werwuifi

La sortie de gradlew -v indique que vous utilisez JDK 9 qui n'est pas pris en charge par JHipster 4.10.2, veuillez utiliser JDK 8. Idem pour Lombok .

------------------------------------------------------------ Gradle 4.2.1 -------
Build time: 2017-10-02 15:36:21 UTC 
Revision: a88ebd6be7840c2e59ae4782eb0f27fbe3405ddf 
Groovy: 2.4.12 
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015 
JVM: 9.0.1 (Oracle Corporation 9.0.1+11) 
OS: Mac OS X 10.13.1 x86_64
3
Gaël Marziou

Je faisais face à un avertissement similaire dans mon projet lorsque nous sommes passés de JDK 8 à JDK 9.

La mise à niveau de la version de lombok m'a aidé à supprimer l'erreur.

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.20</version>
            <scope>provided</scope>
        </dependency>

J'ai trouvé la référence ici https://github.com/rzwitserloot/lombok/issues/1541

1
hemanto