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

构建失败:'com.sun.tools.javac.tree.JCTree qualid' 错误求助

解决java.lang.NoSuchFieldError: JCTree$JCImport无qualid字段的问题

这个错误确实和Lombok版本与JDK/编译环境的兼容性直接相关,以下是针对性的解决步骤:

  • 升级Lombok到兼容版本
    Spring Boot 2.7.x的依赖管理中,推荐的Lombok稳定版本是1.18.24及以上,你的1.18.18版本对JDK 12+的javac内部API适配不足。直接修改项目依赖配置:
    Maven示例:

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.24</version>
        <scope>provided</scope>
    </dependency>
    

    Gradle示例:

    compileOnly 'org.projectlombok:lombok:1.18.24'
    annotationProcessor 'org.projectlombok:lombok:1.18.24'
    
  • 同步IDE的Lombok插件配置
    如果你用IntelliJ IDEA,确保Lombok插件版本与项目依赖的Lombok版本匹配,同时开启注解处理器:

    1. 打开Settings > Build, Execution, Deployment > Compiler > Annotation Processors
    2. 勾选Enable annotation processing
    3. 若插件版本过低,到插件市场升级Lombok插件至最新版
  • 清理缓存并重新构建

    1. 执行项目构建工具的清理命令:mvn clean(Maven)或gradle clean(Gradle)
    2. 清理IDE缓存:IDEA中选择File > Invalidate Caches...,勾选Clear file system cache and local history后重启IDE
  • 对齐JDK与框架兼容版本
    ThingsBoard 3.6官方推荐使用JDK 11或17(LTS版本),Spring Boot 2.7.x也完美适配这两个版本。优先切换到JDK 11,配合升级后的Lombok版本,能最大程度避免兼容性问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 23:12:08