如何设置commons-logging使用logback?
我们使用slf4j + logback,碰巧有一些使用commons-logging的第三方库。 如何设置它使用logback?
答案是不使用commons-logging.jar,因为SLF4J被devise用来做commons-logging,但是更好。 正如@MahdeTo所指,你需要使用jcl-over-slf4j.jar。
从slf4j网站查看从commons-logging迁移的文档。
我也遇到过这个问题,发现jcl-over-slf4j.jar
确实可以解决这个问题,我不明白为什么commons-logging
不能自动使用logback
,因为commons-logging
是log接口, logback
是实现,他们应该自动整合,直到我发现这个 :
Apache Commons Logging(JCL)提供了一个日志接口,旨在既轻量又独立于其他日志工具包的抽象。 它为中间件/工具开发人员提供了简单的日志抽象,允许用户(应用程序开发人员)插入特定的日志logging实现。
JCL为其他日志工具(包括Log4J,Avalon LogKit(Avalon框架的日志logging基础结构),JDK 1.4和用于1.4之前的系统的JDK 1.4日志loggingAPI(JSR-47))提供了Thin-wrapper Log实现。 该接口紧密地映射到Log4J和LogKit。
很显然,并不是所有的日志界面都可以很好地集成到日志实现中,这意味着如果你真的想使用logback
, jcl-over-slf4j.jar
是你现在唯一的解决scheme,因为JCL
只支持Log4J, Logkit, JDK 1.4
。