如何修复exception:无法实例化SLF4J LoggerFactory?
我正在尝试使用jena库为语义Web编写一个java Web爬虫。 我使用Netbeans构建项目。 我收到两个错误:
-
无法实例化SLF4J LoggerFactory报告的exception:java.lang.NoClassDefFoundError:org / apache / log4j / Level
-
无法在org.slf4j.LoggerFactory.bind(LoggerFactory.java:128)初始化类com.hp.hpl.jena.rdf.model.impl.ModelCom
我已将slf4j-api
和slf4j-log
两个库包括在内。
你还应该包含log4j
库,因为slf4j-log4j
只是一个静态绑定器。
您应该在类路径中包含slf4j-api-xxxjar
和slf4j-simple-xxxjar
。
正如错误所示:
无法实例化SLF4J LoggerFactory
您需要将相应的slf4j-*-*.jar
绑定文件放入classpath文件夹中。
您可以通过locate slf4j
如果存在)找到它们。
从SLF4J版本1.6.0开始,如果在类路径上找不到绑定,则slf4j-api将默认为无操作实现,丢弃所有日志请求。
Tomcat的
如果使用Tomcat,您可以将这些文件复制到/usr/share/tomcat7/lib
或webapp文件夹/var/lib/tomcat7/webapps/*/WEB-INF/lib
。
Solr的
如果您正在使用Solr或者您想使用那里的文件(默认情况下包含这些文件),您可以在dist/solrj-lib
和example/lib/ext
找到它们。
请参阅: Simple Logging Facade for Java(SLF4J)用户手册
我尝试了所有的排列和组合,但最后slf4j- api-和slf4j-simple-运行良好。