You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot应用在IntelliJ中结合Lombok无法运行问题排查

Lombok在IntelliJ 2024.1.7中无法生成Getter/Setter的异常问题

问题详情

已确认该问题的历史解决方案不适用,且已完成相关调研:

  • 安装最新版IntelliJ 2024.1.7,已安装Lombok插件
  • pom.xml中引入1.18.36版本的Lombok依赖
  • 已开启构建过程中的注解处理

应用在Eclipse/STS中结合Lombok可正常运行,执行mvn clean install -U命令完全正常,IntelliJ中能完成构建且测试全部通过,但运行Spring Boot应用时出现6个错误,均为无法找到getter或setter方法。

报错示例

java: cannot find symbol
symbol:   method setCompanyId(java.lang.Long)
location: variable company of type com.product.htmx.demo.model.CompanyEntity

相关实体类代码

@Data
@With
@NoArgsConstructor
@AllArgsConstructor
@SuppressWarnings("serial")
@Entity
@Table(name = "company")
public class CompanyEntity implements Serializable {
    // `company_id` int NOT NULL AUTO_INCREMENT,
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "company_id")
    private Long companyId;
    // 其他属性省略
}

注:另外5个类出现相同的"cannot find symbol"错误,但其他实体和DTO虽有多个属性却未出现此类问题。

排查与解决建议

  • 强制刷新IntelliJ缓存:通过File -> Invalidate Caches...选择"Invalidate and Restart",缓存异常是此类问题的常见诱因
  • 检查文件编码一致性:确认这6个类的文件编码与项目编码统一为UTF-8,非标准编码可能导致Lombok注解解析失败
  • 验证Lombok插件状态:进入Settings -> Plugins搜索Lombok,确保插件已启用且版本与IntelliJ 2024.1.7兼容
  • 检查模块级注解处理配置:多模块项目需确认问题类所在模块的Settings -> Build, Execution, Deployment -> Compiler -> Annotation Processors中,"Enable annotation processing"已勾选
  • 尝试降级Lombok版本:将pom.xml中的Lombok依赖版本改为1.18.34,部分新版本与IntelliJ 2024.x存在兼容性小问题
  • 重新触发构建流程:右键项目选择Maven -> Reload Project,再执行Build -> Rebuild Project,强制Lombok重新生成方法

内容的提问来源于stack exchange,提问作者tjholmes66

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 20:52:34