1、缺少Lombok插件
在插件市场搜索Lombok插件,安装并重启Idea
2、没有指定具体的Lombok依赖的版本
明确具体的依赖版本,在不缺少插件的情况下,推荐直接按照第三方法来操作。
<!--明确Lombok版本-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.38</version>
</dependency>
3、在使用Lombok的@Slf4j注解,并用来写日志,提示找不到log
2.1 问题产生原因
在我们创建项目的时候,我们勾选了Lombok这个依赖包,idea自动写了Lombok在pom.xmld 的配置,而这个配置只启用了Lombok 的注解处理器,但没有指定 JDK 版本(如 17),也没有指定版本号
<version>
,导致使用了默认的旧版本或无效版本,下面是Idea自动生成pom.xml中的配置:
<!--自动导入的依赖-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<!--自动生成的配置-->
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
2.2 解决办法
加上了完整的 JDK 版本;明确Lombok版本; 正确 Lombok 配置。
<!--明确Lombok版本-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.38</version>
</dependency>
<!--修改对应的配置,明确版本-->
<build>
<plugins>
<!-- Maven Compiler Plugin:这是一个maven的插件,不太在意使用哪个版本能用就行 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.11.0</version>
<configuration>
<!-- 设置 JDK 17 编译 -->
<source>17</source>
<target>17</target>
<!-- 启用注解处理器,支持 Lombok 等框架 -->
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.38</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</build>
2.修改完成配置以后,记得清理一下,并重新刷新一下Maven