使用Lombok 1.18.32搭配Java 17出现访问性错误求助
解决Lombok 1.18.32 + Java 17 + Eclipse 兼容性问题
方法一:升级Lombok版本
- Lombok从1.18.22版本开始对Java 17的支持更完善,直接升级到1.18.22及以上稳定版本即可解决大部分兼容性问题。
- 若使用Maven,修改
pom.xml中的依赖配置:<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.30</version> <!-- 或更高稳定版 --> <scope>provided</scope> </dependency> - 升级后重新安装Lombok到Eclipse:运行下载的lombok.jar,选择你的Eclipse安装路径完成安装,最后重启Eclipse。
- 若使用Maven,修改
方法二:给Eclipse添加Java 17模块参数(临时方案)
如果暂时无法升级Lombok,可通过添加VM参数解除Java 17的模块封装限制:
- 打开Eclipse,依次点击
Window > Preferences > Java > Installed JREs - 选中已配置的Java 17 JRE,点击
Edit按钮 - 在
Default VM arguments输入框中添加以下参数:--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED - 点击
Finish保存配置,重启Eclipse生效。
方法三:检查并升级Eclipse版本
确保使用的Eclipse版本支持Java 17,比如Eclipse 2021-09及以上版本才对Java 17有良好适配,旧版Eclipse本身可能存在Java 17兼容问题,建议同步升级到对应版本。
内容的提问来源于stack exchange,提问作者pratik gore
相关产品推荐
相关产品推荐

