Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.2.4
-
None
-
Moderate
Description
The Maven POM for CXF 2.2.4 contains the following lines:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>1.5.8</version>
</dependency>
This forces the SLF4J JDK14 binding to be downloaded and included in any project using this POM. Even if we want to use Log4J instead, we have no choice about the JDK14 binding being included in our project.
We're using the Maven-Eclipse plugin to generate our Eclipse configuration. This results in slf4j-jdk14 being added to the classpath. Again this appears to be unavoidable.
SLF4J picks the first binding in the classpath. This appears to be unavoidable. There is no documented way to avoid it. Because J comes before L, it always picks the JDK binding over the Log4J binding. This makes it impossible to use Log4J instead.
I don't think any project should force users to choose a particular logging binding, as this defeats the whole point of SLF4J. Please just depend on the API, and let the developer or user install whatever actual binding they wish.
Attachments
Issue Links
- is duplicated by
-
CXF-2701 Make slf4j-jdk14 optional dependency in http-jetty
- Closed