Performance 龙目山'@Slf4j';减慢对象初始化速度?

Performance 龙目山'@Slf4j';减慢对象初始化速度?,performance,lombok,Performance,Lombok,我正在使用我们构建的两个自定义库,它们大量使用lombok注释,尤其是@Slf4j。当我记录创建每个bean所花费的时间时,我看到带有@Slf4j注释的类花费了太多的时间(比如30秒左右)来创建 Mine是一个平均大小的项目,大约有90个jar依赖项。我的观察结果是@Slf4j减慢初始化速度有意义吗?如果是这样,修复方法是什么?@Slf4j在编译过程中转换为此代码片段: private static final org.slf4j.Logger log=org.slf4j.LoggerFacto

我正在使用我们构建的两个自定义库,它们大量使用lombok注释,尤其是
@Slf4j
。当我记录创建每个bean所花费的时间时,我看到带有
@Slf4j
注释的类花费了太多的时间(比如30秒左右)来创建


Mine是一个平均大小的项目,大约有90个jar依赖项。我的观察结果是
@Slf4j
减慢初始化速度有意义吗?如果是这样,修复方法是什么?

@Slf4j
在编译过程中转换为此代码片段:

private static final org.slf4j.Logger log=org.slf4j.LoggerFactory.getLogger(MyClass.class);
然后从类文件中删除注释本身(即,在运行时不存在)。因此,您遇到的性能问题可能是由于
LoggerFactory.getLogger()
的性能造成的,它的性能取决于正在使用的日志后端(例如logback或log4j)


无论您是手动编写该行还是使用lombok,性能都不会有任何差异。

@Slf4j
在编译过程中转换为以下代码片段:

private static final org.slf4j.Logger log=org.slf4j.LoggerFactory.getLogger(MyClass.class);
然后从类文件中删除注释本身(即,在运行时不存在)。因此,您遇到的性能问题可能是由于
LoggerFactory.getLogger()
的性能造成的,它的性能取决于正在使用的日志后端(例如logback或log4j)

无论您是手动编写该行还是使用lombok,性能都不会有差异