On Sun, Aug 14, 2016 at 4:31 PM Michael Osipov <micha...@apache.org> wrote:

> Am 2016-08-12 um 23:48 schrieb Christopher:
> > Hi,
> >
> > I use a plugin which has a runtime dependency on an slf4j implementation,
> > but the plugin itself is built without declaring one in its pom. (
> > https://github.com/koraktor/mavanagaiata/issues/43)
> >
> > In some versions of Maven, I get a warning about slf4j not finding an
> > implementation. In other versions, it is silent.
> >
> > Was an slf4j implementation provided in newer versions to the execution
> of
> > plugins?
> >
> > Will there be a multiple-binding conflict if the plugin itself provides
> one
> > of its own to get rid of the warning on certain versions of maven which
> > result in that warning (I didn't see one when I tried)?
> >
> > If there is a risk of a conflict, which implementation would be preferred
> > in order to converge on one provided by Maven?
> >
> > Is there another solution the plugin should seek?
> >
> > In general, what dependencies are plugins expected to provide, and what
> > dependencies are expected to be provided by Maven, and how are conflicts
> > resolved in the architecture?
> >
> > Feel free to comment on the GitHub issue directly, or here. I'll be
> > watching both.
>
> I will cite what I have written on Stack Overflow
> (http://stackoverflow.com/a/7107934/696632) five years ago and it still
> holds true:
>
> You *never* provide a log implementation. The client application has to
> do so. Otherwhise this would be a violation of separation of concerns.
> Don't do any assumptions about an unknown client.
>
>
I agree with that sentiment...generally. But this is a maven plugin, so I'm
trying to figure out what Maven is going to provide it when it executes. If
it's not going to provide an implementation, then the plugin has to. If you
have answers to the specific questions I asked above, I think it might help.

Reply via email to