0

我加入了一个使用 lombok 进行日志记录的新项目,@Slf4j但具有以下配置:

lombok.log.fieldIsStatic=false

这使我无法在静态方法中使用 Lombok 的记录器。我没有得到解释为什么它是这样配置的,但我不能改变它。显然我可以用静态方法的旧方式来做,例如

private static final Logger LOG = LoggerFactory.getLogger(MyClass.class); 

但我喜欢带注释的方法。lombok.log.fieldIsStatic所以我的问题是是否可以同时使用它,即在不更改属性值的情况下,对静态和非静态方法都使用 Lombok 的日志记录方法。

感谢您的关注。

4

1 回答 1

2

文档

配置文件是分层的:任何配置设置都适用于该目录中的所有源文件,以及子目录中的所有源文件,但更接近源文件的配置设置优先

因此,您可以创建第二个 Lombok 配置文件,该文件专用于一个模块,或者甚至可能只是一个包,它会覆盖根级别的属性以将其重置为静态。

否则,没有。

我没有得到解释为什么它是这样配置的,但我不能改变它

这听起来像是一个文化问题。我完全赞成遵循既定的先例,但前提是有人能够并且愿意证明为什么选择它。

于 2020-06-30T15:30:59.410 回答