Register VersionScheme as Plexus Component
------------------------------------------
Key: MNG-5017
URL: http://jira.codehaus.org/browse/MNG-5017
Project: Maven 2 & 3
Issue Type: Wish
Components: Bootstrap & Build, Design, Patterns & Best Practices
Affects Versions: 3.0.2
Reporter: Sean Patrick Floyd
Priority: Minor
I would like to implement custom {{{VersionConstraints}}}, and have thought of
creating a subclass of {{{GenericVersionScheme}}} to achieve that. However, I
had to realize that {{{GenericVersionScheme}}} is instantiated via {{{new
GenericVersionScheme()}}} instead of dependency injection.
Please register {{{GenericVersionScheme}}} as a Plexus Component with the role
{{{org.sonatype.aether.version.VersionScheme}}}, and use the injected version,
that way I can write extensions that provide a wrapped version.
Here are the affected instantiations that I could find:
GenericVersionScheme() - org.sonatype.aether.util.version.GenericVersionScheme
isMavenVersion(String) : boolean -
org.apache.maven.rtinfo.internal.DefaultRuntimeInformation
MytoysGenericVersionScheme - de.mytoys.maven.version.resolver
resolveVersionRange(RepositorySystemSession, VersionRangeRequest) :
VersionRangeResult -
org.apache.maven.repository.internal.DefaultVersionRangeResolver
selectVersion(DefaultPluginVersionResult, PluginVersionRequest,
Versions) : void -
org.apache.maven.plugin.version.internal.DefaultPluginVersionResolver
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira