gradle 如何修复“lombok.javac.apt.LombokProcessor无法初始化”

8cdiaqws  于 2023-05-18  发布在  Java
关注(0)|答案(4)|浏览(211)

我的问题与“https://stackoverflow.com/questions/35236104/gradle-build-fails-on-lombok-annotated-classes”有关。我正在使用JHipster和Lombok 1.16.18与build.gradle

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

但在编译Java时出现以下错误:

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

输出为:

------------------------------------------------------------ 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

我错过了什么?

pw9qyyiw

pw9qyyiw1#

gradlew -v的输出显示您正在使用JHipster 4.10.2不支持的JDK 9,请使用JDK 8。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
ddrv8njm

ddrv8njm2#

当我们从JDK 8迁移到JDK 9时,我在我的项目中遇到了类似的警告。
升级lombok版本帮助我消除了错误。

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

我在这里找到了参考资料https://github.com/rzwitserloot/lombok/issues/1541

cnwbcb6i

cnwbcb6i3#

如果你正在使用gradle,这对我很有效

dependencies {    annotationProcessor group: 'org.projectlombok', name: 'lombok', version: '1.18.16'}
o4hqfura

o4hqfura4#

我也遇到过类似的问题,结果是我在项目设置上搞砸了,无意中将项目JVM设置为11,而不是“正确”的8。
我把它重新设置为8,它又工作了。

相关问题