java - 为什么 lombok 突然停止了我的项目?

标签 java spring intellij-idea lombok

我一直在将一个基于 Spring3 的项目重构为 Spring5,并遇到了一个奇怪的情况,突然所有与 lombok 相关的代码都没有生成。例如

@Slf4j
public class MyClass {
...
  log.info("something");

会抛出这个错误

cannot find symbol
  symbol: variable log
  location: MyClass

IntelliJ IDEA 也开始无法正确执行任何操作。 Maven 刷新、清理或标准 IDE 构建只会在明显没有问题的行上抛出错误。

由于我最近完成了大规模的结构化查找和替换以及多次重构操作,我无法判断我做了什么破坏了它。

最佳答案

虽然 IntelliJ 只是崩溃并且无法编译任何代码,但使用 Maven 的命令行编译显示了此错误:

[ERROR] /C:/dev/source/...../MySecuredWebService.java:[83,5] org.springframework.security.access.prepost.PreAuthorize is not a repeatable annotation type

事实证明,我不小心用@PreAuthorize注释了一个方法两次。这阻止了 Spring 和 lombok 进行任何注释处理,因此也破坏了 IntelliJ。只需删除错误的注释即可再次修复所有问题。

关于java - 为什么 lombok 突然停止了我的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67307378/

相关文章:

java - "Detecting"并在 GAE 中加载 "plugins"

java - @NotNull 不始终与 MethodValidationPostProcessor 一起运行

mysql - Intellij IDEA 到数据源的 ssh 隧道

java - Apache 可以基于 Tomcat webapp 的 Spring SecurityContext 限制访问吗?

java - 同时合并多个已排序数组

java - Neo4j 4.0 Spring 如何指定数据库?

java - IDEA 启动本地 glassfish 服务器失败

java - IntelliJ Android - 调试前删除应用程序

java - 使用java在第二次出现空格时分割字符串

java - sql 查询在 Hibernate 中很慢,在 mysql 上很快