SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder"
This is for those who came here from google search.
If you use maven just add the following
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.5</version>
</dependency>
Or
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.6.4</version>
</dependency>
I had the same issue with WebSphere 6.1. As Ceki pointed out, there were tons of jars that WebSphere was using and one of them was pointing to an older version of slf4j.
The No-Op fallback happens only with slf4j -1.6+ so anything older than that will throw an exception and halts your deployment.
There is a documentation in SLf4J site which resolves this. I followed that and added slf4j-simple-1.6.1.jar
to my application along with slf4j-api-1.6.1.jar
which I already had.
If you use Maven, add the following dependencies, with ${slf4j.version}
being the latest version of slf4j
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${slf4j.version}</version>
</dependency>
This solved my issue.