Prannoy Mittal
Prannoy Mittal

Reputation: 1575

How to fix exception: Failed to instantiate SLF4J LoggerFactory?

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:

  1. Failed to instantiate SLF4J LoggerFactory Reported exception: java.lang.NoClassDefFoundError: org/apache/log4j/Level

  2. 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

Answers (5)

nessa.gp
nessa.gp

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

nikhil bangar
nikhil bangar

Reputation: 49

I tried all permutation and combination but finally slf4j-api- and slf4j-simple- worked well.

Upvotes: 2

kenorb
kenorb

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.

Tomcat

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.

Solr

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

prodigy4440
prodigy4440

Reputation: 101

You should include slf4j-api-x.x.x.jar and slf4j-simple-x.x.x.jar in your classpath.

Upvotes: 7

Filipe Fedalto
Filipe Fedalto

Reputation: 2540

You should also include log4j library as slf4j-log4j is just a static binder.

Upvotes: 11

Related Questions