6

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.

kenorb
  • 155,785
  • 88
  • 678
  • 743
Prannoy Mittal
  • 1,525
  • 5
  • 21
  • 32

4 Answers4

11

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

kenorb
  • 155,785
  • 88
  • 678
  • 743
Filipe Fedalto
  • 2,540
  • 1
  • 18
  • 21
6

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

kenorb
  • 155,785
  • 88
  • 678
  • 743
prodigy4440
  • 91
  • 3
  • 7
1

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

0

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

kenorb
  • 155,785
  • 88
  • 678
  • 743