geronimo implementation of javamail could say
spring.jar pom could say
CLONE - Add info to the poms for dependencies that implement an API or provide other dependencies
Add option to redownload poms
Another possible solution would be to add a new scope: implements
That does not change the XML schema... the only issue is older maven clients... but we faced that issue adding the import scope... so I don't see a major issue with such a scope
we can leave javax.* as placeholders and then have com.sun for the default one, org.apache.geronimo for geronimo one,...
How would you be able to use such information if it was available?
Perhaps your example is bad, but javax.mail is not just an API - it is an implementation, so including it on it's own is perfect;y valid, no extra implementation is needed.
If there was a purely api jar and you implement it with another artifact how would we know about it?
This would also be useful when building OSGi bundles, which are wired to each other using Export-Package and Import-Package headers in the manifest.