解决Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field ‘com.sun.tools.javac.tre

avatar
作者
筋斗云
阅读量:0

问题描述

在更新自建基础项目过程中,compile、install报错。

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

解决方案

问题原因是Lombok ,与 JDK 21 兼容的最低 Lombok 版本是 1.18.30,最小的 Spring Boot 版本是 3.1.4。

直接先升级lombok至1.18.30或以上版本,若仍不行,再尝试升级Spring Boot 至3.1.4或以上版本。项目当前JDK是1.8、SpringBoot是2.7.13、lombok是1.18.24。

这里在版本管理模块先升级到1.18.30版本、install,各模块问题都解决。

<dependency>    <groupId>org.projectlombok</groupId>    <artifactId>lombok</artifactId>    <version>1.18.30</version> </dependency>

请注意,如果在经过上述尝试后,即使重新运行构建后仍然出现错误,可能是由于 IntelliJ 有一些缓存仍在获取以前的 lombok 版本。在这种情况下尝试以下方法之一:

  • Maven > Reload,或者右键单击 pom.xml 文件并选择 Maven > Reimport
  • 重新启动 IntelliJ

终极解决方案:

找到maven本地仓库,删除之前的Lombok本地仓库,重新启动 IntelliJ,并reload maven。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!