On Wed, 2010-01-06 at 13:41 +0000, Stephen Connolly wrote:
> however you might have to wait for "install" as the attached artifact
> can be replaced in the reactor, e.g. maven-shade-plugin could be
> replacing the artifact with its shaded version
> 
> you only know by the time you hit install (or the last phase in the
> invoked lifecycle, whichever comes first) that the attached artifacts
> are the final attached artifacts for consumption by dependent modules
> 

This  is really interesting, because it probably has the same solution
as the antrun problem.

>From a 10000 foot perspective, what my patch really does is augment the
ProjectDependencyGraph with Scheduling information, effectively
constructing a much richer dependency graph.

The "Schedule" that is added to the ExecutionPlanItem describes the
relationship to upstream plugins/phases. So when a given plugin has a
specific requirement (i.e. "I require a jar file") it expresses a
dependency upon the install plugin. 

I see that I should probably tweak it slightly, since at the moment a
plugin can only depend on "itself" in upstream projects, while it
probably needs to be able to depend on "any" number of plugins/phases
in upstream projects. 

This is all resolved at the time of calculating the plan, so the actual 
net effect (=reduction in concurrency) is decided by the actual projects
in question.

Thankfully, this is also the primary kind of "detail" I anticipated
would come - so it's just a few lines of code.


Kristian




---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to