Mau*_*fer 1 java apache-commons slf4j apache-commons-logging
我有这个第三方图书馆:
我想针对这个库编写一些测试并查看它的日志输出,我不想再添加任何日志库(没有log4j或其他任何东西).
据我所知,SLF4J和通用日志都记录抽象性,因此我可能需要写我自己的简单具体记录器(或许不是,因为JCL-过SLF4J包括org.apache.commons.logging.impl.SimpleLog?).如果是这样,我应该实现哪些接口,更重要的是,如何设置SL4J/Common Logging以在我的测试中使用我的记录器?我在SLF4J文档中读到我必须修改StaticLoggerBinder类 ...这是否真的意味着我实际上必须下载SLF4J源代码,修改类并重新编译它?
我们使用SLF4J.它非常有用,但有几个罐子的名字令人困惑,而且开始知道哪些罐子不相容并不是很清楚.
SLF4J是用于登录代码的API(例如log.info("blah").但是,SLF4J没有配置方面.在运行时,您只需将一个 jar 添加到将API绑定到"真实"日志记录子系统的类路径中.如果您想要使用Log4J,添加slf4j-log4j.jar或用于Simple或JDK或Logback的StaticBinder jar .您可以像平常一样配置任何这些日志记录实现而不使用SLF4J.
有几个SLF4J模块可用于将使用Log4J,Apache Commons Logging和java.util.logging的API编写的现有日志语句重定向到SLF4J.这允许您为所有这些不同的实现设置单个日志记录配置.(如果您有直接绑定到任何旧式日志记录框架的库,这对于避免配置Log4J和JUL 非常有用.)
该SLF4J传统网页深入阐述了这些概念.哎呀,甚至还有一个模块将Sysout.out/err重定向到SFL4J.
更直接地回答你的问题:确保你可以在SLF4J下编写自己的日志记录实现; 但这样做的唯一原因是因为你已经被锁定在一些本土的垃圾邮件框架中.
| 归档时间: |
|
| 查看次数: |
6132 次 |
| 最近记录: |