Lombok版本过低导致maven打包时报错

项目中使用了Lombok,运行时正常,将项目打包时,控制台报错,信息如下:

class lombok.javac.apt.LombokProcessor (in unnamed module @0x61bfc9bf) cannot access class com.sun.tools.javac.processing.JavacProcessingEnvironment (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.processing to unnamed module @0x61bfc9bf

这是lombok版本过低导致,报错版本pom依赖:

<!--Lombok -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.16</version>
</dependency>

将1.18.16改为1.18.28或未来更新版本(目前最高版本是1.8.28):

<!--Lombok -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.28</version>
</dependency>

再次打包,成功。

### 解决 IDEA 版本Lombok 在编译报‘找不到符号’的问题 在开发过程中,如果遇到 IDEA版本环境中使用 Lombok 报‘找不到符号’的错误,通常可以通过以下几个方面来排查并解决问题。 #### 1. 添加 Lombok 依赖 确保项目中的 `pom.xml` 文件包含了正确的 Lombok 依赖项。以下是 Maven 配置的一个示例: ```xml <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.22</version> <!-- 版本可以根据需求调整 --> <scope>provided</scope> </dependency> ``` 此操作可以确保项目的构建工具能够识别 Lombok 注解,并正确处理生成的代码[^1]。 #### 2. 安装并启用 Lombok 插件 确认 IDE 中已经安装了 Lombok 插件,并启用了相应的功能: - 进入菜单栏:`File -> Settings -> Plugins`。 - 搜索 “Lombok”,如果没有安装,则点击安装按钮。 - 安装完成后,重启 IDEA。 此外,在设置页面中还需要检查是否启用了 Annotation Processor 功能: - 路径为:`File -> Settings -> Build, Execution, Deployment -> Compiler -> Annotation Processors`。 - 确保勾选了“Enable annotation processing”选项[^3]。 #### 3. 升级 LombokIDEA 版本 当使用的 IDEA 或者 Lombok 是较版本,可能会因为兼容性问题而导致无法正常工作。建议尝试升级 Lombok 至最新稳定版(如从 1.18.12 升级至 1.18.22),或者考虑更新 IDEA 到更高版本以获得更好的支持[^4]。 #### 4. 清理缓存与重建项目 有旧的缓存文件可能导致异常行为。执行以下命令可以帮助清除可能存在的残留数据: - 使用终端运行 `mvn clean install` 来彻底清理和重新打包整个工程; - 同也可以通过 IDEA 自带的功能清空内部缓存:`File -> Invalidate Caches / Restart...`[^2]。 #### 5. JVM 参数配置优化 对于某些特殊场景下仍然存在此类问题的情况,可以在 VM options 中增加特定参数 `-Djps.track.ap.dependencies=false` ,从而绕过部分潜在冲突点。 --- ### 总结 综上所述,针对 IDEA 版本环境下因 Lombok 导致的 ‘找不到符号’ 错误,主要应关注于引入合适的库依赖、激活必要的插件以及保持软件组件间良好的匹配度等方面来进行调试修复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值