Description
Hi,
Jetty in Karaf 2.3.1 is importing slf4j without version restrictions. When i install other components that have strict slf4j dependency, i'm running into multichain dependencies.
org.osgi.framework.BundleException: Uses constraint violation. Unable to resolve bundle revision org.ops4j.pax.web.pax-web-jetty [76.0] because it is exposed to package 'org.slf4j' from bundle revisions org.ops4j.pax.logging.pax-logging-api [4.0] and com.springsource.slf4j.api [107.0] via two dependency chains.
Chain 1:
org.ops4j.pax.web.pax-web-jetty [76.0]
import: (&(osgi.wiring.package=org.slf4j)(version>=1.5.0)(!(version>=2.0.0)))
export: osgi.wiring.package=org.slf4j
org.ops4j.pax.logging.pax-logging-api [4.0]
Chain 2:
org.ops4j.pax.web.pax-web-jetty [76.0]
import: (&(osgi.wiring.package=org.eclipse.jetty.security)(version>=7.1.0)(!(version>=8.0.0)))
export: osgi.wiring.package=org.eclipse.jetty.security; uses:=org.eclipse.jetty.server
org.eclipse.jetty.security [65.0]
import: (&(osgi.wiring.package=org.eclipse.jetty.server)(version>=7.6.0)(!(version>=8.0.0)))
export: osgi.wiring.package=org.eclipse.jetty.server; uses:=org.eclipse.jetty.io
org.eclipse.jetty.server [64.0]
import: (&(osgi.wiring.package=org.eclipse.jetty.io)(version>=7.6.0)(!(version>=8.0.0)))
export: osgi.wiring.package=org.eclipse.jetty.io; uses:=org.eclipse.jetty.util.log
org.eclipse.jetty.io [59.0]
import: (&(osgi.wiring.package=org.eclipse.jetty.util.log)(version>=7.6.0)(!(version>=8.0.0)))
export: osgi.wiring.package=org.eclipse.jetty.util.log; uses:=org.slf4j.spi
org.eclipse.jetty.util [58.0]
import: (&(osgi.wiring.package=org.slf4j.spi)(version>=1.6.0)(!(version>=2.0.0)))
export: osgi.wiring.package=org.slf4j.spi; uses:=org.slf4j
export: osgi.wiring.package=org.slf4j
com.springsource.slf4j.api [107.0]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:3832)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1868)
at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1191)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:295)
at java.lang.Thread.run(Thread.java:680)