无法delombok:InvokingTargetException:java.lang.NoSuchFieldError:类com.sun.tools.javac.tree.JCTree$JCImport没有成员字段'com.sun.tools.javac.tree.JCTree qualid'(这是终端错误)
我正在构建代码,但在运行“mvn clean install”时出现此错误我之前使用的是 jdk 21,但现在我转向了 jdk 17(因为网上一些帖子说它与 21 不兼容),但我仍然遇到相同的错误, “lombok:1.18.20.0:delombok(默认)”这显示在终端上,然后是构建失败,非常感谢帮助构建代码,因为我已经被这个错误困扰很长时间了。
提前致谢
您似乎正在使用
lombok-maven-plugin
在 Maven 构建期间执行 delombok 任务。那是一个不是由lombok团队维护的第三方插件,并且它还没有更新多个lombok版本。最新的插件版本 1.18.20.0 使用 lombok 1.18.20,它不适用于 JDK 17 或 JDK 21。
但是,您可以通过 lombok-maven-plugin
轻松建议
pom.xml
使用较新的 lombok 版本:
<build>
<plugins>
<plugin>
<groupId>org.projectlombok</groupId>
<artifactId>lombok-maven-plugin</artifactId>
<version>1.18.20.0</version>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.30</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>