Slf4j consists of 3 pieces - input mappers (like log4j-slf4j) that pretend to be other implementations, the api itself (slf4j-api), and output mappers (like slf4j-log4j) that delegate the logging message to the users chosen implementation. Of these, only the API should be a compile dependency, the others should be marked "provided" so that the user can choose their own output mapper.
This specifically shows up in:
It also occurs transitively in org.zkoss.common.zel. "org.beanshell.bsh" includes it - it can be removed like so:
If I get a free moment I'll put together a changeset myself for this and submit it - its a pretty small change overall.
- is duplicated by
ZK-4480 Remove JUL implementation of SLF4J to avoid leaking into consumer projects