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

添加Lombok 1.18.32后Java项目编译失败,提示‘Symbol not found’

解决Lombok 1.18.32在IntelliJ IDEA 2023.3.2中编译时Getter/Setter符号找不到的问题

以下是针对该问题的排查和解决步骤:

1. 确认构建工具依赖配置正确性

Maven项目

确保pom.xml中同时声明Lombok依赖,并在编译插件中指定注解处理器路径:

<!-- Lombok依赖 -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.32</version>
    <scope>provided</scope>
</dependency>

<!-- 编译插件配置 -->
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.11.0</version>
            <configuration>
                <source>17</source> <!-- 替换为你的项目JDK版本 -->
                <target>17</target>
                <annotationProcessorPaths>
                    <path>
                        <groupId>org.projectlombok</groupId>
                        <artifactId>lombok</artifactId>
                        <version>1.18.32</version>
                    </path>
                </annotationProcessorPaths>
            </configuration>
        </plugin>
    </plugins>
</build>

Gradle项目

在build.gradle中正确配置Lombok的编译依赖和注解处理器:

dependencies {
    compileOnly 'org.projectlombok:lombok:1.18.32'
    annotationProcessor 'org.projectlombok:lombok:1.18.32'
}

compileJava {
    options.annotationProcessorPath = configurations.annotationProcessor
}

2. 细化IntelliJ注解处理配置

  • 打开Settings > Build, Execution, Deployment > Compiler > Annotation Processors,确认Enable annotation processing已勾选,且Store generated sources relative to选择Module content root。
  • 检查项目的target/generated-sources/annotations(Maven)或build/generated/sources/annotationProcessor/main/java(Gradle)目录是否被标记为Sources Root(右键目录 > Mark Directory as > Sources Root)。
  • 执行File > Invalidate Caches...,选择Invalidate and Restart,清理IDE缓存后重启。

3. 验证JDK版本兼容性

  • 确认File > Project Structure > Project中的Project SDK和Language Level与项目实际使用的JDK版本一致(Lombok 1.18.32支持JDK 8~21)。
  • 检查模块级别的Language Level是否与项目设置匹配(Project Structure > Modules > 对应模块 > Sources)。

4. 区分IDE与命令行编译行为

  • 在终端执行mvn clean install(Maven)或gradle clean build(Gradle),观察是否同样报错:
    • 若命令行编译失败:问题出在构建配置,回到步骤1检查依赖。
    • 若命令行编译成功:执行IDE的项目同步操作(Maven:右侧面板点击Reload All Maven Projects;Gradle:点击Reload Gradle Project),再重新编译。

5. 检查Lombok插件状态

  • 打开Settings > Plugins,搜索Lombok插件,确认其处于Enabled状态。若插件版本过旧,卸载后重新安装适配IntelliJ 2023.3.2的最新版本,然后重启IDE。

6. 验证实体类注解使用正确性

  • 检查实体类上的@Data、@Getter、@Setter等注解是否拼写正确,类本身为public访问权限。
  • 确保类中没有语法错误(如未闭合的代码块、缺失的分号),这类错误会打断Lombok注解处理器的代码生成流程。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 17:47:19