lombok在高版本idea中注解不生效的解决

环境:

IntelliJ IDEA 2024.3.1.1 + Spring Boot + Maven


问题描述

使用@AllArgsConstructor注解一个用户类,然后调用全参构造方法创建对象,出现错误:

java: 无法将类 com.itheima.pojo.User中的构造器 User应用到给定类型;   需要: 没有参数   找到:    java.lang.Integer,java.lang.String,java.lang.String,java.lang.String,java.lang.Integer,java.time.LocalDateTime   原因: 实际参数列表和形式参数列表长度不同

 

解决方案:

第一种方法:直接使用ptg插件自动生成空参构造,有参构造,get,set方法

第二种方法 :不要在项目创建时引入,而是项目创建后直接在pom.xml<dependency>的方式引入

第三种解决方法:给lombok注解加入1.18.30的版本号,并删除下方build中所有和lombok有关的配置。注意版本一定得是1.18.30,并且不要忘记刷新maven仓库。

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.30</version>
        </dependency>

以上三个方法足以解决上述问题。 

 

### 解决 IntelliJ IDEALombok 插件不生效的方法 当遇到 Lombok 插件在 IntelliJ IDEA不生效的情况时,可以采取多种措施来解决问题。以下是详细的解决方案: #### 配置环境变量 确保 JDK 版本支持 Lombok 功能。对于较旧版本的 JDK (如 1.6),可能无法完全兼容最新版 Lombok 或其功能受限[^1]。 #### 安装并启用插件 确认已正确安装 Lombok 插件,并且该插件处于激活状态。前往 `File` -> `Settings` -> `Plugins` 查找 "Lombok Plugin" 并点击右侧按钮以启用它。如果未找到,则需手动下载并安装此插件。 #### 更新 IDE 和插件至最新稳定版本 有时较低版本可能存在 bug 导致某些特性不可用;因此建议更新到官方发布的最近一次稳定版本,这有助于修复潜在错误以及提高性能表现。 #### 设置编译器参数 为了使 Lombok 正常工作,在项目结构设置里添加特定 JVM 参数: 进入 `File` -> `Project Structure...` -> `Modules`, 然后选择对应的模块; 接着切换到 `Dependencies Tab` 添加 `-javaagent:path/to/lombok.jar` 到 VM options 字段中(注意替换 path/to/为实际路径)。另外还需保证 Idea 的 Build, Execution, Deployment 下 Compiler 节点内的 Annotation Processors 复选框被勾选上以便开启注解处理器服务[^2]。 #### 清理缓存重启IDEA 执行 Invalidate Caches / Restart 操作可以帮助清除可能导致冲突的数据残留物从而恢复正常运作流程。通过菜单栏里的 `File`->`Invalidate Caches / Restart…` 来完成这项任务。 ```bash # 执行清理操作命令 ./idea.sh --clear-system-cache ``` #### 测试最小化案例 创建一个新的简单 Java 类测试是否能够成功识别 @Getter/@Setter 注释等基本语法糖构造。这样能排除其他因素干扰进而准确定位问题所在之处。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值