解决报错:java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport

Cannot invoke “javax.script.ScriptEngine.eval(String)” because “engine” is null jdk17下执行以下代码发生报错。 阅读详情
AI摘要

博客主要解决 java.lang.NoSuchFieldError 报错,此为运行时错误,当 JVM 试图访问类的特定字段,编译时有但运行时找不到就会抛出。使用 jdk21 后,Lombok 编译无法访问内部 Java 编译器 API 导致该问题,将 Lombok 版本升级到 1.18.30 及以上可修复。

解决报错:java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field ‘com.sun.tools.javac.tree.JCTree qualid’

报错的原因是:java.lang.NoSuchFieldError 是一个运行时错误,当 Java 虚拟机(JVM)试图访问一个类的特定字段,但该类在编译时存在该字段,而在运行时却找不到该字段时,就会抛出此错误。在你的情况中,错误提示表明 com.sun.tools.javac.tree.JCTree$JCImport 类没有 com.sun.tools.javac.tree.JCTree qualid 这个成员字段。

当使用jdk21后,Lombok编译无法访问内部Java编译器API所导致的

解决

将lombok的版本升级到1.18.30及以上,这些版本修复了此问题

      <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.32</version>
      </dependency>
【已解决】java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have Lombok在早期版本中使用反射访问com.sun.tools.javac.tree.JCTree$JCImport类的。这个错误通常是由于升级到Java 21后,Lombok库无法正确访问内部的Java编译器API导致的。将Lombok库升级到1.18.30或更高版本。该版本已经修复了这个问题。这导致了Lombok无法正确访问该字段,从而抛出。字段,该字段在Java 21中的类型发生了变化。通过升级Lombok版本,就可以解决这个。在Java 21及更高版本中, 阅读详情

相关推荐

【spring】does not have member field ‘com.sun.tools.javac.tree.JCTree qualid

does not have member field 'com.sun.tools.javac.tree.JCTree qualid'

突围 1403

报错java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not ...解决方法

在运行项目时出现java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field 'com.sun.tools.javac.tree.JCTree qualid'zz这样的报错。

m0_53762408的博客 1万+

解决:java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have me

JDK版本升级到21后,Lombok编译无法访问内部Java编译器API导致的。1、将 Lombok 升级到1.18.30或更高版本。该版本已经修复了此问题。

hkl_Forever的博客 5359

Java|IDEA 运行和打包报错解决

将 IDEA 的 Project Structure(File > Project Structure)中的 Project 和各个 Modules 的 JDK 版本统一。在部分 IDEA 或 Maven 版本,如果统一上述配置后仍未解决,需再检查系统环境变量与上述配置中的 JDK 版本是否统一。lombok 的 1.18.26 版本兼容性问题,使用 1.18.30 版本即可。

长行 1万+

基于Xilinx Artix7 的FPGA高级应用 (二):千兆以太网通信(实战篇)第一期

本项目是基于Xlinx Artix7 XC7A35T芯片 以太网芯片选用的是RTL8211EG PHY芯片 MAC 和PHY接口标准是GMII 开发工具是vivado 2018.3 我们先来复习一下以太网的基本通信原理: 当我们的计算机需要与局域网中另外的设备进行通信的时候,需要将数据传输到网卡进行编码,然后传输到线上,经过另一个设备的网卡解码成该设备能读取的数据。 关于以太网协议的知识在原理篇中已经讲过,不再重复,下面直接看接收代码: 首先注意我们的MAC和PHY通信选择的是GMII接口标准,发送数据一

工大技术底层人员的博客 4033

RK3506开发板实战:5分钟搞定开源鸿蒙OpenHarmony5.1+星闪功能配置

本文提供了一份基于RK3506开发板快速配置开源鸿蒙OpenHarmony 5.1并启用星闪功能的实战指南。文章详细介绍了从开发环境搭建、系统镜像编译烧录,到星闪驱动加载验证、应用开发及性能调优的全流程,帮助开发者高效上手,将新一代短距无线通信技术应用于物联网项目。

time3的博客 653

启动 jeecg项目报错 java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree...

启动 jeecg项目报错 java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field ‘com.sun.tools.javac.tree.JCTree qualid’。

weixin_39676449的博客 7369

燧原科技云燧ESL64-O超节点:国产AI芯片与OEX光互联架构解析

分布式AI训练通过将计算任务拆分到多个节点并行执行来加速模型训练,其核心原理涉及数据并行和模型并行等策略。在技术价值层面,分布式训练能显著提升大规模深度学习任务的效率,但传统GPU集群常因网络通信瓶颈导致性能受限。OEX光互联架构作为解决通信瓶颈的关键创新,采用硅光技术实现高带宽、低延迟的节点内互联,优化了AI训练中的集合操作。这种硬件级优化特别适用于千亿参数大模型训练和科学计算等场景,能有效降低AI集群的总体拥有成本(TCO)。云燧ESL64-O超节点正是基于国产自研AI芯片与OEX架构的集成方案,为大规

weixin_29071809的博客 370

java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have membe

lombok版本导致。升级lombok版本。

Pardon_wang的博客 1万+

【74HC595芯片】核心驱动代码

74HC595是一个8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7’输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。

weixin_67147824的博客 1846

VIVADO中的IP核在MATLAB中仿真

VIVADO中的IP核在MATLAB中仿真项目简述VIVADO建立FFT IP核MATLAB调用FFT IP核 项目简述 我们都会用MATLAB进行算法验证,但是经常会发现如果VIVADO中调用了IP核,那么最终会发现VIVADO与MATLAB之间的数据不可以统一的对应起来。那么,MATLAB验证的效果就会大大下降,那么可不可以想办法将VIVADO中的IP核封装成一个函数在MATLAB中调用呢?答案是可以的。这篇博客主要以FFT的IP核为例讲解封装成一个函数并且成功在MATLAB中调用。 本次实验所使用的软

zhangningning1996的博客 6989

解决java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have 报错

这个问题的根本原因是与不兼容。解决方法很简单:您需要将 Lombok 更新到或更高版本。

weixin_60130631的博客 633

华为CNA VRM搭建(使用vmware worfstartion搭建)

华为CNA和VRM在 vmware workstation安装使用

weixin_70595351的博客 1808

com.sun.tools.javac.tree.JCTree qualid‘

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

2301_80160619的博客 2773

化工管道设计软件:CAESAR II二次开发_(6).API接口与函数库

自定义函数库是开发者根据特定需求编写的函数集合。这些函数可以扩展CAESAR II的功能,实现更复杂的管道设计任务。自定义函数库通常需要开发者具备一定的编程基础,能够理解和编写与CAESAR II接口兼容的代码。定义函数:在Python或其他编程语言中定义所需的函数。注册函数:将自定义函数注册到CAESAR II的函数库中。调用函数:在CAESAR II中调用自定义函数,实现特定功能。假设我们需要创建一个自定义函数库,用于批量修改管道节点的坐标。定义函数:在Python中定义一个函数,用于批量修改节点坐标。

kkchenjj的博客 1726

HTML金色流星雨(完整代码)

HTML实现金色流星雨动态效果的完整代码。

AIGC 992

IDE报错 NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field ‘

这个错误信息意味着你的 Java 代码尝试访问。博主在jdk1.8的环境下封装实体类的时候。使用lombok的注解高级注解导致的。jdk版本过低然后又使用新的特性。这边手搓javabean即可解决。的字段,但是这个字段不存在。主要可能是使用了高级注解。

多多的博客 12万+

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

【异常】JDK21报错NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member fie

lombok版本兼容性的问题。更新新版 lombok即可。

我是Superman丶的博客 6万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

报错:java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have me

这个命令会生成或更新 IntelliJ IDEA 的项目文件(如。:Lombok 的某些版本可能不兼容你当前使用的 JDK 版本。文件),确保 IDE 能够正确识别和处理项目的依赖关系和配置。或构建工具可能缓存了旧的编译结果,导致运行时出现问题。:IDE 可能没有正确识别或处理 Lombok 注解。1. 将pom中lombok版本更新为最新。

acaad的博客 1万+

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

运行项目出现java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport ...

java.lang.NoSuchFieldError 表示在运行时尝试访问一个不存在的类字段。这个错误通常是由于不同版本的类文件或库之间的不兼容性引起的,尤其是在使用编译器内部 API 或第三方工具时。简单来说就是项目jdk与你使用加载的jdk版本不同,在其他版本中jdk所用的方法已经改变命名或者被迁移,废除,或者是由于你使用的某个插件智能在某个版本jdk中使用。

huasa_666的博客 2921

解决报错 | Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field ‘com.sun.tools.java

错误消息“java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport 没有成员字段“com.sun.tools.javac.tree.JCTree qualid””,通常是由于使用的库版本与需要该库特定版本的代码不匹配而导致的。3、添加版本,修改其版本号为最新版本,比如1.18.32。1、进入到项目中的pom.xml文件。2、找到依赖中的lombok一项。

程序源的博客 2091

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

‌需要注意的是,虽然mvn idea命令在某些情况下仍然可以使用,但它已经被新的命令所取代。出现java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field 'com.sun.tools.javac.tree.JCTree qualid'报错可能是引入依赖中你的lombok版本和jdk版本不匹配,,这里我跟新到了1.18.34。

weixin_63043528的博客 1393
上一篇: 接口性能优化方案
下一篇: Springboot高版本和druid兼容问题
到长安送荔枝
博客等级 码龄3年 108粉丝 10原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值