我在 Eclipse 中有 lombok 插件,并在 java 编译器下启用了 Eclipse 中的注释处理,但是当我使用 @Slf4j 注释时仍然无法识别日志语句。
我们是否必须进行任何其他设置?
在我的 STS 环境中,我在 log 和 @Slf4j 上也遇到了类似的问题。为了解决这个问题,这是我在 spring 工具套件(sts-4.4.0.RELEASE)和 lombok-1.18.10.jar(mavenrepository 中提供的当前最新版本)上所做的。
如果有 maven 项目,请确保添加了 lombok 依赖项。否则,您需要手动将 jar 添加到项目类路径中。
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.10</version>
<scope>provided</scope>
</dependency>
清理构建 Maven 应用程序。默认情况下,这将从 maven 存储库下载您的 .m2 位置的 lombok jar。路径将是org\projectlombok\lombok\1.18.10\
现在打开命令提示符并导航到 lombok 路径并执行命令 java -jar lombok-1.18.10.jar
C:\xxx\xxx\org\projectlombok\lombok\1.18.10>java -jar lombok-1.18.10.jar
打开龙目岛对话框。如果看到消息Can't find IDE
单击Specify location...
提供 STS 根位置的路径
我的情况是
C:\apps\sts-4.4.0.RELEASE\SpringToolSuite.exe
Install/Update
安装成功点击退出安装程序
现在在资源管理器中导航到您的 STS 根路径。
C:\apps\sts-4.4.0.RELEASE\
我们看到lombok.jar
放置在 sts 根路径现在在记事本SpringToolSuite4.ini
文件中编辑我们看到在末尾附加以下内容
-javaagent:C:\apps\sts-4.4.0.RELEASE\lombok.jar
使用 Clean 启动 STS SpringToolSuite4.exe
,重建您的项目。
即使安装了 Lombok,我也遇到了同样的错误。对我来说,解决方案是在我的课程中添加另一个 lombok 注释(我使用 @Data),之后 eclipse 错误消失了。也许这股力量刷新了一些缓存。
当然,后来我只是简单地删除了@Data注解。
这通过添加 slf4j 依赖项解决了我的问题,Lombok 可以识别 slf4j 但无法下载,如果您使用的是 spring boot,那么对于 java 项目来说这是正确的,那么默认情况下会出现 slf4j。
这是我的依赖项
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.6</version>
<scope>provided</scope>
</dependency>