Java 为什么有人会在部署时选择/更改特定的日志框架?

Java 为什么有人会在部署时选择/更改特定的日志框架?,java,logging,slf4j,Java,Logging,Slf4j,我正在阅读有关使用java进行日志记录的内容,并遇到以下问题: 这里谈到了slf4j的一个优点: 可以在部署时选择自己的日志框架==>通过在类路径上插入适当的jar文件(绑定),可以在部署时插入所需的日志框架。 有人能给我解释一下为什么以及在哪里需要这个吗?您正在编写一个通用的pupose库,它使用SLF4J生成日志 公司A使用它,并且已经将其所有it基础设施配置为使用log4J。他们很高兴您的API也可以使用log4J进行日志记录 B公司也使用它,并且已经将其所有it基础设施配置为使用Java

我正在阅读有关使用java进行日志记录的内容,并遇到以下问题: 这里谈到了slf4j的一个优点:
可以在部署时选择自己的日志框架==>通过在类路径上插入适当的jar文件(绑定),可以在部署时插入所需的日志框架。
有人能给我解释一下为什么以及在哪里需要这个吗?

您正在编写一个通用的pupose库,它使用SLF4J生成日志

公司A使用它,并且已经将其所有it基础设施配置为使用log4J。他们很高兴您的API也可以使用log4J进行日志记录

B公司也使用它,并且已经将其所有it基础设施配置为使用Javautil日志记录。他们很高兴您的API也可以使用Javautil日志来记录


C公司也使用它,并且已经将其所有it基础设施配置为使用logback。他们很高兴您的API也可以使用logback进行日志记录。

我可以想到以下场景:

  • Websphere使用JCL日志记录,如果也使用JCL,那么您可以在运行时设置/修改日志级别和过滤器
  • AppServerX更倾向于Log4J,所以使用它可能更好
使用SLF4J,您无需重构底层日志框架的代码即可使用