But to be honest I don't have a clue what makes the difference, do you have any idea?
I see that the slf4j-api bundle included in DirectoryStudio has an Import-Package statement ( strange for an API bundle )
Export-Package = org.slf4j;version=1.7.10, org.slf4j.spi;version=1.7.10, org.slf4j.helpers;version=1.7.10
Import-Package = org.slf4j.impl;version=1.6.0
That package is exported by the logback bundle, which in turns imports org.slf4j.helpers from the other slf4j bundle, which is the root cause of the uses constraint violation. With this wiring the slf4j-api bundle would be exposed to the same package exported by two bundles.
I looked at the update site and noticed that the log binding features pulls in the org.apache.directory.studio.slf4j-eclipselog, which exports the 'impl' package and is actually a fragment bundle:
This means that the slf4j-api bundle no longer has to be wired to the logback-core bundle to be resolved, which explains why this works.
Anyway, I hope that with
DIRAPI-233 and update to LDAP API 1.0.0-M31 the additional slf4j-api 1.7.10 won't be required any more. I'll test when I find some time.
Is there a way I can test these changes myself?