[ http://jira.codehaus.org/browse/MNG-226?page=comments#action_40629 ]
     
John Casey commented on MNG-226:
--------------------------------

the current problem is this:

we have a core plexus container used by the maven application, which defines 
things like WagonManager; and for each plugin, we have a child container which 
loads that plugin's specific dependencies (those not filtered by the exclusion 
filter in DefaultPluginManager). In the deploy plugin, the plugin contained 
(this has been worked around for now) declared a dependency on 
wagon-ssh...which means that the scp wagon should have been visible to 
WagonManager for this plugin's context. HOWEVER, since WagonManager is defined 
in the parent container, it cannot see components in the child (plugin) 
container, and therefore has no idea of the scp wagon's existence in the system.

This situation has other implications as well. For example, if we define a new 
wagon capable of artifact deployment - say webdav - we have to redeploy the 
maven-deploy-plugin with this new wagon as a dependency. It would probably be 
smarter in these cases to have a lookup mechanism which is similar to maven's 
plugin location process (brett's idea), and which would be reusable across 
maven-artifact, maven-scm, maven-core (plugins), etc.

As for component-factories, the new reliance on nested DefaultPlexusContainer 
instances rather than a single DefaultArtifactContainer should fix this. This 
is a special case, since the ComponentFactoryManager is a core plexus 
component, and is therefore defined in every container instance.

For now, wagon-ssh is included in maven-core's runtime dependencies, and we'll 
revisit this post-2.0

> need to be able to dynamically register providers for wagon, scm, scripting
> ---------------------------------------------------------------------------
>
>          Key: MNG-226
>          URL: http://jira.codehaus.org/browse/MNG-226
>      Project: Maven 2
>         Type: Bug
>   Components: design
>     Reporter: Brett Porter
>     Assignee: John Casey
>      Fix For: 2.0-alpha-3

>
>
> currently, only what is a dependency on the using plugin, or in maven2/lib is 
> used. Need to be able to add these on the fly - perhaps this is a plexus 
> artifact container thing that can register certain roles with 
> groupID/artifactId patterns so a hint of "file" can always go and get 
> wagon-file?

-- 
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


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to