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

李景琰 2024-07-07 16:35:01 阅读 80

问题描述

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

<code>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,各模块问题都解决。

<code><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。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。