news 2026/5/26 15:21:46

阶段三 在做movie这个项目时,有些同学使用本地高版本的JDK21来做这个项目时启动报错

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
阶段三 在做movie这个项目时,有些同学使用本地高版本的JDK21来做这个项目时启动报错

一、错误现象

有些同学本地只有21版本的JDK,然后使用JDK21来做movie这个项目时,启动报错,如图

具体的错误信息:

java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field 'com.sun.tools.javac.tree.JCTree qualid'

二、分析错误原因

这个错,通常是LombokJDK 21(或更高版本JDK)不兼容所导致的问题

具体是因为:题干附件里给的 movie这个项目,使用的springBoot版本是 3.0.5

而每个版本的springBoot,内部都会去管理维护 一些常用依赖jar包的版本号,如下图,就是3.0.5版本的springBoot内部维护的各个依赖的版本号。如下图,3.0.5这个版本的springBoot,内部维护的lombok的版本号默认是1.18.26,所以你的pom里引用lombok时,如果不写version版本号,那它默认用的就是springBoot中维护的这个版本

具体分析原因如下:

  • com.sun.tools.javac.tree.JCTree$JCImport 是 JDK 编译器内部的类,属于 内部 API
  • Lombok 在编译期通过反射或直接操作 AST(抽象语法树)来生成代码(如 getter/setter 等),因此会依赖这些内部API
  • JDK 17+(尤其是 JDK 21)对内部 API 做了大量重构或移除,字段名、类结构可能都发生了变化。例如:在旧版 JDK 中,JCImport 类有一个字段叫 qualid,但在 JDK 21 中该字段可能已被重命名为 qualifiedIdentifier 或其他名称。
  • 如果你使用的 Lombok 版本较旧(如 < 1.18.30),它还不支持 JDK 21 的内部结构变化,就会抛出 NoSuchFieldError。

三、解决方案

第一种方案:

不使用springBoot维护的默认Lombok版本,在项目的pom.xml中显式的把Lombok的版本号写出来,并且使用兼容 JDK 21 版本的Lombok:Lombok 1.18.30 及以上版本 开始正式支持 JDK 21。

推荐使用最新稳定版(截至 2026 年 1 月,最新版为 1.18.34)

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

最后刷新maven,再重新启动项目就可以了

第二种方案:

或者本地安装的有jdk17的话,可以切换jdk的版本到17也可以

idea中切换jdk版本,可以看这一篇:IDEA中切换jdk版本时,需要修改确认的地方,最全的记录

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/20 15:35:55

Hunyuan-MT-7B购买Token送算力?限时优惠活动开启

Hunyuan-MT-7B&#xff1a;当大模型翻译遇上“一键部署”&#xff0c;AI普惠正在发生 在边疆地区的基层医院里&#xff0c;一位汉族医生面对维吾尔族患者的病历记录束手无策&#xff1b;在西南山区的双语课堂上&#xff0c;教师为找不到高质量的彝汉教学材料而发愁&#xff1b;…

作者头像 李华
网站建设 2026/5/22 8:48:29

权限控制设计:多用户场景下的安全访问机制

权限控制设计&#xff1a;多用户场景下的安全访问机制 引言&#xff1a;从万物识别项目看多用户系统的权限挑战 随着AI模型在企业级应用中的广泛部署&#xff0c;如何在多用户环境中保障资源的安全访问成为系统设计的关键命题。以“万物识别-中文-通用领域”这一阿里开源的图像…

作者头像 李华
网站建设 2026/5/24 19:06:13

deepcode国内使用教程

deepcode国内使用教程 本文面向国内网络环境/国内模型接口的使用场景&#xff0c;整理了从 GitHub 克隆 DeepCode 后&#xff0c;为了“能跑起来 更稳定 更快写代码进文件”需要做的关键修改点与原因。 说明&#xff1a;本文不会写入任何真实 API Key&#xff0c;请按自己的…

作者头像 李华
网站建设 2026/5/24 11:50:11

税务工作流智能体设计与实现方案

税务工作流智能体设计与实现方案 一、项目概述与设计理念 1.1 项目背景 税务工作流智能体是基于Coze平台构建的专业化税务处理助手,旨在通过AI技术实现税务流程自动化、智能化和标准化。本系统将税务申报、发票管理、税务咨询、风险评估等核心业务整合到统一的工作流中,显…

作者头像 李华