Lombok 注释处理器不在 Gradle 中运行

问题描述 投票:0回答:1

我按照文档使用 Gradle 设置了 Lombok,但运行 build

 任务显然不会运行注释处理器,并且会因“找不到符号”错误而失败,因为 javac 无法找到 lombok 生成的方法。

我的 IDE(Intellij)显然无论如何都设法生成方法并且不会给我任何错误。

我正在使用在 JDK 21 上运行的 Gradle 8.7,并使用 JDK 22 工具链进行编译。

我的 gradle 依赖项设置:

dependencies { compileOnly 'org.projectlombok:lombok:1.18.32' annotationProcessor 'org.projectlombok:lombok:1.18.32' testCompileOnly 'org.projectlombok:lombok:1.18.32' testAnnotationProcessor 'org.projectlombok:lombok:1.18.32' testImplementation platform('org.junit:junit-bom:5.10.0') testImplementation 'org.junit.jupiter:junit-jupiter' }
仅应用的插件是 

java

application

我还尝试使用

--debug

 标志运行 gradle 并检查编译器参数,我可以确认 lombok 在那里,尽管 
build\generated\sources\annotationProcessor\java\main
 目录中没有生成任何内容。

java gradle lombok
1个回答
0
投票
原来问题是我使用了

@UtilityClass

 注释,这显然阻止了所有注释的运行......当然。

我用显式的

static

 方法替换了它,并且效果很好。

© www.soinside.com 2019 - 2024. All rights reserved.