2012-10-29 37 views
3

我创建了一个包含所有依赖关系的jar文件,并使用slf4j + logback实现了日志记录。因此,我为所有记录器定义了一个logback.xml文件。然而,当我运行jar它给了我这个消息:未能加载类'org.slf4j.impl.StaticLoggerBinder'

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". 
SLF4J: Defaulting to no-operation (NOP) logger implementation 
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. 

我没有看到任何记录发生。在我解压缩jar文件后,我可以看到org.slf4j文件夹。我不知道为什么这不起作用。

回答

3

http://www.slf4j.org/codes.html#StaticLoggerBinder(在该消息中的链接):

当org.slf4j.impl.StaticLoggerBinder 类不能被加载到存储器,将报告该误差。当在类路径上找不到合适的SLF4J绑定时,会发生这种情况。将 中的一个(并且只有一个)slf4j-nop.jar,slf4j-simple.jar, slf4j-log4j12.jar,slf4j-jdk14.jar或者类 上的logback-classic.jar路径应该解决问题。 SINCE 1.6.0从SLF4J版本1.6起,在 没有绑定,SLF4J将默认为无操作(NOP) 记录器实现。您可以从 项目下载页面下载SLF4J绑定。

换句话说,你需要在你的类路径中有一个slf4j后端,的logback。

0

这是一个scala项目吗?如果是,那么添加下面的依赖关系将有所帮助。它为我工作。

"org.slf4j" % "slf4j-simple" % "1.7.12" 
+0

不解决它为我的Scala项目。版本是否重要? – matanster

相关问题