查看原文
其他

升级了下 IDEA 后 Lombok 失效了...

翟永超 程序猿DD 2021-11-13

今天到工作室比较晚,在电脑前吃着早饭,看到提示IDEA提示升级,寻思已经有好久没有升过级了。一样等着,就升级下吧。

升级完毕重启之后,突然发现好多错误,原来的应用也没法启动了。仔细一看报错信息,是由于Lombok相关的注解似乎都没有生效。

比如:用到@Slf4j的类里,会有类似这样的报错:

java: 找不到符号
  符号:   变量 log
  位置: 类 com.didispace.UserService

IDEA还提示,现在使用的编译器不支持lombok

java: You aren't using a compiler supported by lombok, so lombok will not work and has been disabled.
  Your processor is: com.sun.proxy.$Proxy26
  Lombok supports: sun/apple javac 1.6, ECJ

搜索一番,是由于IDEA版本导致的Lombok失效,不过这个问题后来解决了。所以,我们只需要更新lombok版本,使用1.18.14及之后的版本即可:

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

如果是Spring Boot用户,往往不写版本号,因为2.x开始,就Spring Boot就把lombok的版本一起纳入了。有些Spring Boot的老版本就比较容易出现这个问题,比如DD这边出问题的工程就是使用的2.1.3,这里默认引入的lombok版本是1.18.6。

因为Lombok版本低,所以在IDEA升级之后就出了这样的问题。手工维护版本到1.18.14之后,得到解决。


如果上面的办法无法解决你的问题,那么再看看下面这些,或许可以帮你解决问题:

  1. Lombok插件是否安装、是否开启


  1. Annotation Processors中的Enable annotation processing是否勾选
  1. 在Compiler中增加参数配置:-Djps.track.ap.dependencies=false

如果你还有其他疑问,关注下方公众号,回复”加群,加入我们的Spring技术交流群,参与交流与讨论,一起学习与进步!

如果您正在学习Spring Boot,DD给你推荐一个连载多年的免费教程:http://blog.didispace.com/spring-boot-learning-2x/ ,内容很全,还在不断增加,建议收藏!


往期推荐

程序员写代码崩溃,路过的暖心美团骑手:我帮你看看!

Spring发布新成员:Spring GraphQL!高调出场的GraphQL能火起来了吗?

推荐一本DD刚撸完的书,顺便送一波!

GitHub的AI写代码翻车了,会在注释里给你写上what the f***,因为...

重装IDEA再也不愁了,一招搞定同步个人配置!



喜欢本文欢迎转发,关注我订阅更多精彩

关注我回复「加群」,加入Spring技术交流群

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存