背景说明
Lombok 是一种 Java™ 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO)。它通过注解实现这一目的,Idea版本升级至2020.3.X版本后发现@Data
、@Getter
、@Setter
均不生效,导致项目无法正常运行。
解决方案
插件信息
选择文件
->设置
->插件
->已安装
输入lombok
确认是否安装
如果未安装
lombok
插件请安装lombok
插件如果
lombok
插件已经安装如果发现可以更新请更新至最新版本再次尝试。
项目信息
选择文件
->设置
->构建、执行、部署[Build,Execution,Deployment]
->编译器[Compiler]
->注解处理器[Annotation Processors]
->启用注解出来[Enable annotation processing]
确认勾选框是否勾选
如果未勾选请勾选并点击
应用[Apply]
然后点击确定[OK]
背景信息
Idea的错误面板提示信息如下:"You aren't using a compiler supported by lombok,so lombok will not work and has been disabled."
一般情况下当遇到问题时可以去github的issue中去查找是否存在此问题,查询过程中发现如下:https://github.com/rzwitserloot/lombok/issues/2592# 提供了两种方案进行解决。
方案实现
方案一
选择文件
->设置
->构建、执行、部署[Build,Execution,Deployment]
->编译器[Compiler]
->共享构建过程VM选项[Shared build process VM options]
在右侧的输入框输入:-Djps.track.ap.dependencies=false
点击应用[Apply]
然后点击确定[OK]
方案二
项目升级lombok版本至1.18.4及其以上版本
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.4</version>
<scope>provided</scope>
<dependency/>
再次reimport
项目并确定项目依赖的jar
版本为1.18.4
即可。
boot
项目升级springboot
版本也可,因为lombok
版本和boot
版本绑定了,但是lombok
版本也需要在1.18.4
及其以上才可