make sure to load extensions from all projects, not just the root in a reactor

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@234149 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Brett Leslie Porter 2005-08-21 05:16:28 +00:00
parent d89c2f1356
commit 34e167076d
1 changed files with 15 additions and 9 deletions

View File

@ -103,9 +103,9 @@ public class DefaultLifecycleExecutor
public MavenExecutionResponse execute( MavenSession session, ReactorManager rm, EventDispatcher dispatcher )
throws LifecycleExecutionException
{
MavenProject project = rm.getTopLevelProject();
MavenProject rootProject = rm.getTopLevelProject();
List taskSegments = segmentTaskListByAggregationNeeds( session.getGoals(), session, project );
List taskSegments = segmentTaskListByAggregationNeeds( session.getGoals(), session, rootProject );
MavenExecutionResponse response = new MavenExecutionResponse();
@ -113,16 +113,22 @@ public MavenExecutionResponse execute( MavenSession session, ReactorManager rm,
try
{
for ( Iterator i = project.getBuildExtensions().iterator(); i.hasNext(); )
// TODO: probably don't want to do all this up front
for ( Iterator i = session.getSortedProjects().iterator(); i.hasNext(); )
{
Extension extension = (Extension) i.next();
extensionManager.addExtension( extension, project, session.getLocalRepository() );
MavenProject project = (MavenProject) i.next();
for ( Iterator j = project.getBuildExtensions().iterator(); j.hasNext(); )
{
Extension extension = (Extension) j.next();
extensionManager.addExtension( extension, project, session.getLocalRepository() );
}
Map handlers = findArtifactTypeHandlers( project, session.getSettings(), session.getLocalRepository() );
artifactHandlerManager.addHandlers( handlers );
}
Map handlers = findArtifactTypeHandlers( project, session.getSettings(), session.getLocalRepository() );
artifactHandlerManager.addHandlers( handlers );
executeTaskSegments( taskSegments, rm, session, project, dispatcher );
executeTaskSegments( taskSegments, rm, session, rootProject, dispatcher );
if ( ReactorManager.FAIL_AT_END.equals( rm.getFailureBehavior() ) && rm.hasBuildFailures() )
{