操作:
idea 2020.3 升级到 2022.1,源代码代码迁移同时迁移。
问题:
之前可以正常运行的,编译出现 java找不到符号
解决过程:
第一步、删除所有模块的iml文件,target文件夹,只保留src和pom.xml重新导入,结果编译失败;
第二步、清除idea缓存,重新启动(如下图),结果编译失败;
第三步、设置编码为utf-8(如下图),结果编译失败;
第四步、设置项目jdk,结果编译失败;
第五步、检查 idea lombok 是否安装,已安装,编译失败;
第六步、提升项目模块中 lombok 版本,从 1.18.12 升级到 1.18.22,编译成功;
总结:
问题所在,原有低版本idea 2020 迁移到 高版本 idea 2021 ,lombok 插件是在线安装,为最新版本 lombok ,与代码中 lombok版本不匹配,导致编译失败,代码如下:
报错前代码:
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version> </dependency>
解决报错后代码:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.22</version>
</dependency>
建议 lombok 使用 idea 兼容版本