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

IntelliJ编译项目时Lombok报错的解决方案咨询

解决方案

问题本质

这个报错核心原因是Lombok版本与IntelliJ内置的javac版本不兼容:你使用的Lombok 1.18.10属于较老版本,而高版本IntelliJ自带的JDK 8 javac组件,对com.sun.tools.javac.code.Symbol$TypeSymbol.isLocal()方法的定义有调整,老版本Lombok无法适配该变化。

具体修复步骤

  1. 升级Lombok版本
    修改父Pom.xml中的<lombok.version>为1.18.26及以上(该版本对JDK 8的javac兼容性做了针对性优化):

    <lombok.version>1.18.26</lombok.version>
    

    执行mvn clean install -U刷新依赖。

  2. 统一项目JDK配置
    避免使用IntelliJ自带的JDK,切换到本地安装的Oracle JDK 8或OpenJDK 8:

    • 打开File → Project Structure → Project,将Project SDK设置为本地JDK 8
    • 进入Modules标签页,确认所有模块的Module SDK与项目SDK保持一致
  3. 检查注解处理配置
    确保IntelliJ的注解处理正确关联Lombok:

    • 打开File → Settings → Build, Execution, Deployment → Compiler → Annotation Processors
    • 勾选Enable annotation processing
    • 确认Processor path中包含Lombok的jar包(Maven管理下一般会自动导入,若缺失可手动添加.m2/repository/org/projectlombok/lombok/{版本}/lombok-{版本}.jar)
  4. 修正服务Pom的错误配置
    你提供的服务Pom中的<path>标签存在错误,应改为标准的<dependency>配置,且与父Pom保持一致:

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>${lombok.version}</version>
        <scope>provided</scope>
    </dependency>
    

    确保项目中没有引入多个版本的Lombok依赖。

  5. 让IntelliJ复用Maven编译逻辑
    直接让IDE调用Maven命令完成构建,避免自身编译的兼容性问题:

    • 打开File → Settings → Build, Execution, Deployment → Build Tools → Maven → Runner
    • 勾选Delegate IDE build/run actions to Maven
      之后IntelliJ的构建、运行测试行为会和mvn clean install完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 10:40:30