[
https://issues.jboss.org/browse/WELD-1109?page=com.atlassian.jira.plugin....
]
Andrew Hughes commented on WELD-1109:
-------------------------------------
Just for reference, you exclude slf4j from the jboss5 classified jar:
https://github.com/weld/core/blob/master/environments/servlet/build/pom.x...
I would recommend the 'default' excludes slf4j, and another 'slf4j'
classified jar should include it (but I think this is still wrong) and now you have
backwards compatibility issues to consider....
{quote}
<execution>
<id>slf4j</id>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<createSourcesJar>true</createSourcesJar>
<shadedArtifactAttached>true</shadedArtifactAttached>
<shadedClassifierName>slf4j-${slf4jVersion}</shadedClassifierName>
<artifactSet>
<excludes>
<exclude>xml-apis:xml-apis</exclude>
<exclude>org.apache.tomcat:catalina</exclude>
<exclude>org.apache.tomcat:servlet-api</exclude>
<exclude>org.apache.tomcat:juli</exclude>
<exclude>org.apache.tomcat:annotations-api</exclude>
<exclude>javax.faces:jsf-api</exclude>
<exclude>org.mortbay.jetty:jetty</exclude>
</excludes>
</artifactSet>
</configuration>
</execution>
<execution>
<id>default</id>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<createSourcesJar>true</createSourcesJar>
<artifactSet>
<excludes>
<exclude>xml-apis:xml-apis</exclude>
<exclude>org.apache.tomcat:catalina</exclude>
<exclude>org.apache.tomcat:servlet-api</exclude>
<exclude>org.apache.tomcat:juli</exclude>
<exclude>org.apache.tomcat:annotations-api</exclude>
<exclude>javax.faces:jsf-api</exclude>
<exclude>org.mortbay.jetty:jetty</exclude>
<exclude>org.slf4j:slf4j-api</exclude>
<exclude>org.slf4j:slf4j-jdk14</exclude>
</excludes>
</artifactSet>
</configuration>
</execution>
{quote}
weld-servlet.jar should NOT contain slf4j (still found in
2.0.0.Alpha1)
-----------------------------------------------------------------------
Key: WELD-1109
URL:
https://issues.jboss.org/browse/WELD-1109
Project: Weld
Issue Type: Bug
Components: Weld SPI
Affects Versions: 2.0.0.Alpha1
Environment: WELD-845
Reporter: Andrew Hughes
Priority: Critical
Labels: slf4j
Original Estimate: 4 hours
Remaining Estimate: 4 hours
NOTE: This is intentionally a duplicate of WELD-845 (because I believe you should fix
this in BOTH 1.1.7+ and 2.0.0).
Please fix this in v2.0.0, v1.1.x is something others might care to comment on...
Inheriting weld-servlet-2.0.0.Alpha1.jar or earlier (as a dependency) should not include
the org.slf4j.** classes. Because it precludes the consuming project from (easily)
selecting which slf4j binding they want to use. I recognise that it is
"convenient" to include these classes because they are quite common in use and
maybe also quite necessary for weld. However, it's very likely to raise slf4j binding
collisions (
http://www.slf4j.org/codes.html#multiple_bindings). Especially with other 3rd
party dependencies having their own slf4j dependencies. It's also likely that this
will affect future projects more so than current projects (i.e. this problem wont simply
'go away'). What would happen if every jar did this???? What if the JRE did
this????
Please remove these classes from the artifact, and please include them in the maven
pom.xml as dependencies (this allows an easy <exclusion> for maven users to fix the
slf4j collision).
Warning (using 1.1.7, but 2.0.0.Alpha contains the same classes):
{{
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in
[jar:file:/C:/dev/workspace/workspace3.7/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/acme-project/WEB-INF/lib/slf4j-jdk14-1.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in
[jar:file:/C:/dev/workspace/workspace3.7/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/acme-project/WEB-INF/lib/weld-servlet-1.1.7.Final.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See
http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
}}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira