On Monday 26 September 2016, Christian Schulte <[email protected]> wrote:

> Am 09/26/16 um 15:29 schrieb Stephen Connolly:
> >             <!--
> >               provides is a marker that we have duplication of content.
> > This could be because we are much like the many servlet-api jar
> >               files where there are many GAV's of the same
> > javax.servlet:servlet-api:3.0 thus we could have the case where
> >
> >
> > org.jboss.spec.javax.servlet:jboss-servlet-api_3.0_spec:jar:1.0.2.Final
> > PROVIDES javax.servlet:servlet-api:3.0
> >
> > org.jboss.spec.javax.servlet:jboss-servlet-api_3.0_spec:jar:1.0.1.Final
> > PROVIDES javax.servlet:servlet-api:3.0
> >
> > org.jboss.spec.javax.servlet:jboss-servlet-api_3.0_spec:jar:1.0.0.Final
> > PROVIDES javax.servlet:servlet-api:3.0
> >               org.mortbay.jetty:servlet-api-3.0:jar:7.0.0pre2 PROVIDES
> > javax.servlet:servlet-api:3.0
> >
> >               similarly
> >
> >               org.slf4j:log4j-over-slf4j:jar:1.7.21 PROVIDES
> > log4j:log4j:[1.0,2)
>
> Looking at the very common API/impl separation, we maybe also should
> think about providing a way to add dependencies on some abstract
> implementation without needing to tell the exact implementation to use.
> Some kind of "virtual" (in need for a better name?) dependency at build
> pom level. So that 'org.slf4j:slf4j-api' can add a dependency on some
> virtual 'org.slf4j:slf4j-impl' for which no artifact exists and which is
> provided by the various slf4j implementations. Currently, when someone
> adds 'slf4j-api' to a project and uses it, a consumer must manually
> handle choosing an implementation. If 'slf4j-api' could hold that
> information (if using slf4j-api, you need to add an artifact providing a
> 'slf4j-impl' as well), Maven could e.g. display a list of available
> implementations to choose from or just fail with a friendly error
> message stating that an implementation artifact is missing for an API
> artifact. So the 'provides' need not necessarily represent an existing
> artifact but rather some kind of concept.


That was actually my original plan. ;-)


>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected] <javascript:;>
> For additional commands, e-mail: [email protected] <javascript:;>
>
>

-- 
Sent from my phone

Reply via email to