运行如下程序
public static void main(String[] args) {
// TODO Auto-generated method stub
Logger LOG = LoggerFactory.getLogger(Test2.class);
System.out.println(".....hi");
LOG.info("hello");
}
}
使用slf4j 时,报错:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
深层原因:slf4j 是一个日志系统的门面实现,simple logging facade for java;即可以通过 slf4j调用 不同的 log 框架,而slf4j本身不是log框架,所以在使用slf4j之前要绑定到一个log框架。这里只要通过导入不同的jar包,即能绑定到不同的log框架;
如 slf4j-simple-xxx.jar ,为simple log;
slf4j-log4j12-xxx.jar,为log4j的log框架;
总结
所以一共需要包含两个jar
1 slf4j-api-xxxx.jar
2 slf4j-simple-xxxx.jar
下载地址:
http://www.slf4j.org/download.html
解压后,获得;
顺便总结一下log系统
参考:http://mike.vanvendeloo.net/2011/05/06/logging-which-framework-to-choose-log4j-commons-logging-logback-slf4j
log4j
早期的日志系统,现在已经不更新,不维护了,v1.2
JUL
java 自带实现的日志系统,但开发并不完整,日志级别设置不清晰;
LogBack
支持slf4j, 相当于是log4j的v2.0, 改进了读写效率,failover机制,自动监测config文件修改,支持用户级别访问;
Jakarta common logging (JCL)
与slf4j 相似的log facade实现,现在已经不维护了。spring使用;