zoukankan      html  css  js  c++  java
  • 升级IDEA后Lombok不能用了,如何解决?

    今天到工作室比较晚,在电脑前吃着早饭,看到提示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

    欢迎关注我的公众号:程序猿DD,分享外面看不到的干货与思考!

  • 相关阅读:
    提高PHP程序运行效率的方法
    必须知道的sql编写技巧。多条件查询不拼接字符串·的写法
    数据库SQL优化大总结之 百万级数据库优化方案
    编程一开始就应该养成的好习惯
    php图像处理
    jqurey 简单的,我也简单
    菜单上下级 (全国地区)
    think php v5.0
    正则表达式
    有感赠朵朵
  • 原文地址:https://www.cnblogs.com/didispace/p/15001523.html
Copyright © 2011-2022 走看看