根本原因是vscode的java语言服务器未加载lombok注解处理器,必须安装microsoft官方extension pack for java、启用annotation processing并确保pom.xml中正确声明lombok依赖。

VSCode里Lombok注解不生效,编译报“cannot find symbol”
根本原因不是代码写错了,而是VSCode的Java语言服务器压根没加载Lombok的注解处理器,导致它“看不见”@Getter生成的方法。Maven命令行能过,但IDE内编译失败、断点进不去、右键没Run选项——这基本是配置断在了插件链上。
必须装对插件,且只保留一个核心组合
别搜“lombok”单独装插件,也别留多个Java相关插件共存。实测最稳路径是:
- 卸载所有非官方 Java 插件(尤其是第三方“Java Extension”或精简版)
- 只安装
Extension Pack for Java(发布者必须是 Microsoft) - 重启 VSCode(不是重载窗口,是彻底关掉再打开)
- 如果项目已有
.vscode/目录,删掉它再重启,避免旧 launch.json 或 classpath 缓存干扰
启用 annotation processing 并确认 Lombok 依赖存在
即使插件装对了,VSCode 默认也不会主动读取 pom.xml 里的注解处理器配置。必须手动触发:
- 确保
pom.xml中有正确声明:<dependency><groupid>org.projectlombok</groupid><artifactid>lombok</artifactid><scope>provided</scope></dependency> - VSCode 设置中搜索
java.configuration.updateBuildConfiguration,设为interactive - 按
Ctrl+Shift+P打开命令面板,运行Java: Configure Classpath→ 选当前项目 → 勾选Enable annotation processing - 检查
lombok版本是否兼容 JDK:JDK 17+ 推荐用1.18.30或更高,1.16.x在新 JDK 下大概率失效
不推荐额外装 gabrielbb.vscode-lombok 插件
这个插件早期有用,但现在和官方 Extension Pack for Java 冲突概率极高。装了反而会导致:
- 编辑器反复提示 “Duplicate annotation processor”
-
@Data类字段补全正常,但运行时dashBoardService报“未在构造器中初始化”这类误判 - 有时连
mvn compile都开始报错,因为 agent 参数被重复注入
真正关键的不是多装一个插件,而是让官方插件链完整走通 annotation processing 这一环——漏掉 Enable annotation processing 这一步,其他都白搭。











