首页 > 代码库 > 【JAVA 包依赖关系】日志包log4j依赖

【JAVA 包依赖关系】日志包log4j依赖

本文解析了打造一个log4j日志框架项目需要的最小的和日志相关的包:


commons-logging-xxx.jar

log4j-xxx.jar

slf4j-api-xxx.jar

slf4j-log4j12-xxx.jar


有兴趣的同志可以继续看看下面:


Java 目前的开源日志框架主要分为 2层:

1)日志门面 (可以理解为接口)

2)日志框架具体代码(具体实现)

上述4个jar包中

commons-logging-xxx.jar

slf4j-api-xxx.jar

分别对应了JCL和slf4j两种日志门面。

后者是前者的替代品,解决了前者的一些问题。

但是,要注意,我开始以为这两兄弟是平行的,其实不是的。

我们在使用slf4j的时候,项目里也必须要包含commons-logging-xxx.jar。 具体原因有空再查证。官方的解释是:您就放着吧。


然后呢:

log4j-xxx.jar 就是log4j核心的日志框架代码。


那slf4j-log4j12-xxx.jar 是干嘛的呢?

可以理解为 链接

log4j-xxx.jar

slf4j-api-xxx.jar

的桥梁,或者适配器。

我个人的理解是,当年log4j刚出来应该没有遵循slf4j,所以写了个适配器来套接一下。【可能不是的,那就当帮助自己记忆吧】 :)






【JAVA 包依赖关系】日志包log4j依赖