Lombok插件安装配置及Getter Setter自动生成教程

老敏君_9204

老敏君_9204

2026-08-14

586人浏览

原创

lombok注解不生效主因是三处未对齐:插件未启用(需勾选且重启idea)、注解处理器未开启(settings→compiler→annotation processors中必须勾选enable)、maven依赖scope错误(必须为provided而非compile)。

lombok插件安装配置及getter setter自动生成教程

IntelliJ IDEA 中 Lombok 注解不生效,大概率不是代码写错了,而是三个地方没对齐:插件没装、注解处理器没开、Maven 依赖 scope 写成了 compile。

IDEA 插件安装后不识别 @Getter/@Setter

插件装了但编辑器仍标红、Ctrl+Click 进不去生成的方法,说明插件未真正启用或版本不匹配。

  • 检查 Settings → Plugins 中 Lombok 插件是否已勾选(不是只显示“Installed”)
  • 确认插件作者是 Michail Plushnikov(JetBrains 官方版不维护 Lombok 注解解析)
  • 2026 年建议用 1.18.36 或更高版本插件(低版本对 JDK 21+ 和 IDEA 2025.x 支持不稳定)
  • 安装后必须重启 IDEA —— 仅 Reload project 不生效

Enable annotation processing 必须手动打开

即使插件和依赖都对了,@Getter 仍不生成方法,90% 是因为 IDEA 默认关闭了注解处理器。

Neeva
Neeva

一款AI工具,主要用于Neeva是一款无广告、无跟踪、无偏见的AI搜索引擎,适合需要提升相关任务效率的用户。

下载
  • 路径:Settings → Build, Execution, Deployment → Compiler → Annotation Processors
  • 必须勾选 Enable annotation processing,否则 Lombok 的编译期代码生成根本不会触发
  • 如果项目是 Maven 多模块,该设置需在每个子模块的 Settings 中单独确认(不是全局一次搞定)
  • 勾选后建议点 Apply 再点 OK,避免设置未提交

pom.xml 里 lombok 依赖的 scope 不能是 compile

编译报错 cannot find symbol method getName() 或运行时报 NoClassDefFoundError: lombok/Lombok,基本是 scope 配错了。

  • 正确写法必须带 <scope>provided</scope>:
<dependency><groupid>org.projectlombok</groupid><artifactid>lombok</artifactid><version>1.18.36</version><scope>provided</scope></dependency>
  • 如果用 Spring Initializr 创建项目,它默认不写 <version></version>,必须手动补全,否则 Maven 会拉取极旧版本(如 1.16.x),与新 IDEA 不兼容
  • provided 表示只在编译期参与,不打包进 jar —— 运行时靠 IDE 注解处理器生成字节码,不是靠运行时加载 lombok.jar
  • @Getter/@Setter 生效但字段访问异常

    代码能编译通过、getter 方法存在,但调用 getName() 报空指针或返回 null,常见于字段修饰符误用。

    • static 字段不会被 @Getter 处理(Lombok 明确跳过)
    • final 字段只生成 getter,不生成 setter;若类上加了 @Data,final 字段也不会有 setter
    • boolean 类型字段的 getter 名是 isActive() 而非 getActive(),手写调用时容易拼错
    • 想控制访问级别(比如只让 package 内可 set),用 @Setter(AccessLevel.PACKAGE),别依赖默认 public

    最常被忽略的是:Lombok 生成的代码只存在于编译后的字节码里,源码里看不到。调试时别盯着 .java 文件找方法 —— 按 Ctrl + 7(Windows/Linux)或 Cmd + 7(macOS)才能看到它实际生成了什么。

    相关文章

    PHP速学视频免费教程(入门到精通)
    PHP速学视频免费教程(入门到精通)

    PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

    下载

    相关标签:

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

    相关专题

    更多
    java
    java

    Java是一个通用术语,用于表示Java软件及其组件,包括“Java运行时环境 (JRE)”、“Java虚拟机 (JVM)”以及“插件”。php中文网还为大家带了Java相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

    2023.06.15

    10537

    6

    java正则表达式语法
    java正则表达式语法

    java正则表达式语法是一种模式匹配工具,它非常有用,可以在处理文本和字符串时快速地查找、替换、验证和提取特定的模式和数据。本专题提供java正则表达式语法的相关文章、下载和专题,供大家免费下载体验。

    2023.07.05

    7662

    9

    java自学难吗
    java自学难吗

    Java自学并不难。Java语言相对于其他一些编程语言而言,有着较为简洁和易读的语法,本专题为大家提供java自学难吗相关的文章,大家可以免费体验。

    2023.07.31

    6692

    8

    java配置jdk环境变量
    java配置jdk环境变量

    Java是一种广泛使用的高级编程语言,用于开发各种类型的应用程序。为了能够在计算机上正确运行和编译Java代码,需要正确配置Java Development Kit(JDK)环境变量。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

    2023.08.01

    1144

    3

    java保留两位小数
    java保留两位小数

    Java是一种广泛应用于编程领域的高级编程语言。在Java中,保留两位小数是指在进行数值计算或输出时,限制小数部分只有两位有效数字,并将多余的位数进行四舍五入或截取。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

    2023.08.02

    928

    3

    java基本数据类型
    java基本数据类型

    java基本数据类型有:1、byte;2、short;3、int;4、long;5、float;6、double;7、char;8、boolean。本专题为大家提供java基本数据类型的相关的文章、下载、课程内容,供大家免费下载体验。

    2023.08.02

    1376

    5

    java有什么用
    java有什么用

    java可以开发应用程序、移动应用、Web应用、企业级应用、嵌入式系统等方面。本专题为大家提供java有什么用的相关的文章、下载、课程内容,供大家免费下载体验。

    2023.08.02

    2769

    5

    java在线网站
    java在线网站

    Java在线网站是指提供Java编程学习、实践和交流平台的网络服务。近年来,随着Java语言在软件开发领域的广泛应用,越来越多的人对Java编程感兴趣,并希望能够通过在线网站来学习和提高自己的Java编程技能。php中文网给大家带来了相关的视频、教程以及文章,欢迎大家前来学习阅读和下载。

    2023.08.03

    20071

    3

    配置java环境变量
    配置java环境变量

    配置Java环境变量是为了让操作系统能够识别和使用Java的相关命令和功能。本专题为大家提供配置java环境变量相关文章,帮助大家解决问题。

    2023.08.03

    1235

    8

    热门下载

    更多
    网站特效
    /
    网站源码
    /
    网站素材
    /
    前端模板

    精品课程

    更多
    热门推荐
    /
    最新课程
    phpStudy极速入门视频教程
    phpStudy极速入门视频教程

    共6课时 | 54.7万人学习

    独孤九贱(4)_PHP视频教程
    独孤九贱(4)_PHP视频教程

    共89课时 | 133.7万人学习