Reputation: 1575
I am trying to write a java web crawler for semantic web using jena library. I have build project using Netbeans. I am receiving two errors:
Failed to instantiate SLF4J LoggerFactory Reported exception: java.lang.NoClassDefFoundError: org/apache/log4j/Level
Could not initialize class com.hp.hpl.jena.rdf.model.impl.ModelCom at org.slf4j.LoggerFactory.bind(LoggerFactory.java:128)
I have included slf4j-api
and slf4j-log
both libraries.
Upvotes: 8
Views: 64930
Reputation: 1863
In my case the Failed to instantiate SLF4J LoggerFactory
happened when I added a module-info.java to my project. The solution was to add these two lines to my module-info.java file:
requires org.apache.logging.log4j;
requires org.apache.logging.log4j.core;
In case it helps someone who reaches this question the way I did.
Upvotes: 0
Reputation: 49
I tried all permutation and combination but finally slf4j-api- and slf4j-simple- worked well.
Upvotes: 2
Reputation: 166319
As error suggested:
Failed to instantiate SLF4J LoggerFactory
you need to place your corresponding slf4j-*-*.jar
binding files into your classpath folder.
You can locate them by locate slf4j
if present.
As of SLF4J version 1.6.0, if no binding is found on the class path, then slf4j-api will default to a no-operation implementation discarding all log requests.
If using Tomcat, these files you can copy either into /usr/share/tomcat7/lib
or your webapp folder /var/lib/tomcat7/webapps/*/WEB-INF/lib
.
If you're using Solr or you want use the files from there (which are included by default), you can find them in dist/solrj-lib
and example/lib/ext
.
See: The Simple Logging Facade for Java (SLF4J) user manual
Upvotes: 0
Reputation: 101
You should include slf4j-api-x.x.x.jar
and slf4j-simple-x.x.x.jar
in your classpath.
Upvotes: 7
Reputation: 2540
You should also include log4j
library as slf4j-log4j
is just a static binder.
Upvotes: 11