IDEA2018升级2023,lombok插件不兼容导致get/set方法无法使用

1、问题

最近了解到一款叫CodeGeeX 的智能编程助手,想要试用一下,但是IDEA2018版本太低了,没有CodeGeeX插件,于是打算将IDEA升级到2023.2.5版本,具体升级过程略过,升级完成后,启动项目,报错了:

java 复制代码
D:\GIT\QduTrustPlatForm\CommonModelAndUtility\SecondNetModel\src\main\java\com\ggnykj\smartems\cloud\model\secondnet\bo\BhzUnitBO.java:59:22
java: 找不到符号
  符号:   方法 getWbBhzUnitId()
  位置: 类型为com.ggnykj.smartems.cloud.model.secondnet.WbBhzUnit的变量 bhzUnit
java 复制代码
public BhzUnitBO(WbBhzUnit bhzUnit) {
        super(bhzUnit.getWbBhzUnitId(), bhzUnit.getWbBhzUnitName(), bhzUnit.getWbBhzUnitIdShortName(), bhzUnit.getWbAreaId(), bhzUnit.getPumpType(),
                bhzUnit.getPumpFlow(), bhzUnit.getPumpPower(), bhzUnit.getPumpLift(), bhzUnit.getPumpEffic(), bhzUnit.getExchangeType(),
                bhzUnit.getExchangeArea(), bhzUnit.getExchangeEffic(), bhzUnit.getXPos(), bhzUnit.getYPos(), bhzUnit.getSupplyPressure(),
                bhzUnit.getBackPressure(), bhzUnit.getScale(), bhzUnit.getSignWidth(), bhzUnit.getIsvalid(), bhzUnit.getRemark());
    }
java 复制代码
@Data
public class WbBhzUnit implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 机组ID
     */
    private int wbBhzUnitId;
    private Integer companyId;

看到上面的内容,其实问题就很简单了,我的实体类,使用了lombok 插件,只需要在类上加**@Data** 注解,插件就可以自动实现类下面字段属性的get/set方法。但是因为IDEA2018升级到IDEA2023,版本差的较多,到底lombok 插件的版本差距较大,旧版本的lombok插件与新版IDEA不兼容。

2、解决方案

因为idea,自带的lombok 插件,都已经自动升级了,这里说的旧版本的lombok 插件与新版IDEA不兼容,是指项目中的pom.xml 文件中maven引入的lombok版本, 与新版IDEA的lombok插件 版本不兼容。我IDEA2018项目中的pom.xml 文件中maven引入的版本是lombok1.18.2 ,但升级到IDEA2023以后,这个版本与IDEA2023中自带的lombok插件 版本比较就落后不兼容了,所以,我把maven引入的版本升级lombok1.18.24,这样版本就可以兼容了,重新引入jar包后,重启服务,就不报错了。

原版本

java 复制代码
<dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.18.2</version>
                <scope>provided</scope>
            </dependency>

新版本

java 复制代码
<dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.18.24</version>
                <scope>provided</scope>
            </dependency>
相关推荐
伏加特遇上西柚29 分钟前
Loki+Alloy+Grafana日志采集部署
java·linux·服务器·spring boot·grafana·prometheus
Geoking.43 分钟前
VSCode 安装 Claude Code 插件 + ccswitch 配置 DeepSeek API 完整教程(Windows 新手向)
ide·windows·vscode
阿丘Akiu1 小时前
Linux部署我的世界服务器
java
折哥的程序人生 · 物流技术专研1 小时前
《Java面试85题图解版(二)》进阶深化中篇:Spring核心 + 数据库进阶
java·后端·spring·面试
SamDeepThinking1 小时前
写代码不考虑前后兼容,迟早要还的
java·后端·程序员
亿牛云爬虫专家1 小时前
深度解析:数据采集场景下的 Java 代理技术实战
java·开发语言·数据采集·动态ip·动态代理·代理配置·连接池复用
小小仙。1 小时前
IT自学第四十二天
java·开发语言
java1234_小锋2 小时前
说一下Spring的事务传播行为?
java·数据库·spring
庞轩px2 小时前
第四篇:SpringBoot自动配置——约定大于配置的底层原理
java·spring boot·后端·spring·自动配置·注解开发
不知名的忻2 小时前
Dijkstra算法(朴素版&堆优化版)
java·数据结构·算法··dijkstra算法