The SLF4J documentation says that it's best practice for libraries to not include a concrete logging binding.
I'm wondering what to do about transitive dependencies though.
Let's say my library
A depends on another library
B which depends on
A have an
commons-logging or not?
If it does it would also have to include a dependency on
jcl-over-slf4j because users of my library would not know that some component might use
commons-logging for logging without looking at the
Granted, this way they also have to look at the
pom.xml and see
slf4j in there.
The other option is to just use
slf4j-api in my library
A and let the end-user application Z deal with all exclusions and include all necessary bridges once.
What would be considered best practice (if there is one)?