You are viewing a plain text version of this content. The canonical link for it is here.
Posted to m2-dev@maven.apache.org by br...@apache.org on 2005/02/25 04:48:17 UTC
cvs commit: maven-components/maven-core/src/main/java/org/apache/maven DefaultMaven.java
brett 2005/02/24 19:48:17
Modified: maven-core/src/main/java/org/apache/maven/cli MavenCli.java
maven-core/src/main/java/org/apache/maven/execution
MavenReactorExecutionRequest.java
maven-core/src/main/java/org/apache/maven DefaultMaven.java
Log:
bring back the reactor (instantiation still needs work - see comments)
Revision Changes Path
1.11 +3 -5 maven-components/maven-core/src/main/java/org/apache/maven/cli/MavenCli.java
Index: MavenCli.java
===================================================================
RCS file: /home/cvs/maven-components/maven-core/src/main/java/org/apache/maven/cli/MavenCli.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- MavenCli.java 16 Feb 2005 07:16:31 -0000 1.10
+++ MavenCli.java 25 Feb 2005 03:48:17 -0000 1.11
@@ -136,8 +136,6 @@
request = new MavenInitializingExecutionRequest( localRepository, mavenProperties, commandLine.getArgList() );
}
- MavenExecutionResponse response = new MavenExecutionResponse();
-
// ----------------------------------------------------------------------
// Now that we have everything that we need we will fire up plexus and
// bring the maven component to life for use.
@@ -158,9 +156,9 @@
//
// ----------------------------------------------------------------------
- response = maven.execute( request );
+ MavenExecutionResponse response = maven.execute( request );
- if ( response.isExecutionFailure() )
+ if ( response != null && response.isExecutionFailure() )
{
return 1;
}
1.2 +9 -5 maven-components/maven-core/src/main/java/org/apache/maven/execution/MavenReactorExecutionRequest.java
Index: MavenReactorExecutionRequest.java
===================================================================
RCS file: /home/cvs/maven-components/maven-core/src/main/java/org/apache/maven/execution/MavenReactorExecutionRequest.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- MavenReactorExecutionRequest.java 16 Feb 2005 07:16:32 -0000 1.1
+++ MavenReactorExecutionRequest.java 25 Feb 2005 03:48:17 -0000 1.2
@@ -18,10 +18,11 @@
*/
import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.execution.AbstractMavenExecutionRequest;
+import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.util.FileUtils;
import java.io.File;
+import java.io.IOException;
import java.util.List;
import java.util.Properties;
@@ -68,10 +69,13 @@
}
public List getProjectFiles()
- throws Exception
+ throws IOException
{
- List files = FileUtils.getFiles( new File( System.getProperty( "user.dir" ) ), includes, excludes );
+ return FileUtils.getFiles( new File( System.getProperty( "user.dir" ) ), includes, excludes );
+ }
- return files;
+ public MavenProjectExecutionRequest createProjectExecutionRequest( MavenProject project )
+ {
+ return new MavenProjectExecutionRequest( localRepository, parameters, goals, project.getFile() );
}
}
1.19 +34 -17 maven-components/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
Index: DefaultMaven.java
===================================================================
RCS file: /home/cvs/maven-components/maven-core/src/main/java/org/apache/maven/DefaultMaven.java,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- DefaultMaven.java 25 Feb 2005 03:14:49 -0000 1.18
+++ DefaultMaven.java 25 Feb 2005 03:48:17 -0000 1.19
@@ -21,6 +21,7 @@
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.execution.MavenExecutionRequest;
import org.apache.maven.execution.MavenExecutionResponse;
+import org.apache.maven.execution.MavenProjectExecutionRequest;
import org.apache.maven.execution.MavenReactorExecutionRequest;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.lifecycle.LifecycleExecutor;
@@ -39,7 +40,6 @@
import org.codehaus.plexus.i18n.I18N;
import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
-import org.codehaus.plexus.util.FileUtils;
import java.io.File;
import java.util.ArrayList;
@@ -78,14 +78,18 @@
public MavenExecutionResponse execute( MavenExecutionRequest request )
throws GoalNotFoundException, Exception
{
- MavenExecutionResponse response = new MavenExecutionResponse();
-
- handleProject( request );
-
- return response;
+ // TODO: not happy about this:
+ if ( request instanceof MavenReactorExecutionRequest )
+ {
+ return handleReactor( (MavenReactorExecutionRequest) request );
+ }
+ else
+ {
+ return handleProject( request );
+ }
}
- public void handleProject( MavenExecutionRequest request )
+ public MavenExecutionResponse handleProject( MavenExecutionRequest request )
throws Exception
{
MavenSession session = createSession( request );
@@ -98,10 +102,13 @@
MavenExecutionResponse response = lifecycleExecutor.execute( request.getGoals(), session );
+ // TODO: is this perhaps more appropriate in the CLI?
if ( response.isExecutionFailure() )
{
if ( response.getException() != null )
{
+ // TODO: this should be a "FATAL" exception, reported to the developers - however currently a LOT of
+ // "user" errors fall through the cracks (like invalid POMs, as one example)
logError( response );
}
else
@@ -113,14 +120,15 @@
{
logSuccess( response );
}
+ return response;
}
// ----------------------------------------------------------------------
// Reactor
// ----------------------------------------------------------------------
- public void handleReactor( MavenExecutionRequest request, MavenExecutionResponse response )
- throws Exception
+ public MavenExecutionResponse handleReactor( MavenReactorExecutionRequest request )
+ throws ReactorException
{
List projects = new ArrayList();
@@ -128,9 +136,7 @@
try
{
- List files = FileUtils.getFiles( new File( System.getProperty( "user.dir" ) ),
- ( (MavenReactorExecutionRequest) request ).getIncludes(),
- ( (MavenReactorExecutionRequest) request ).getExcludes() );
+ List files = request.getProjectFiles();
for ( Iterator iterator = files.iterator(); iterator.hasNext(); )
{
@@ -169,15 +175,26 @@
line();
- //MavenProjectExecutionRequest projectExecutionRequest = request.createProjectExecutionRequest( project );
+ MavenProjectExecutionRequest projectExecutionRequest = request.createProjectExecutionRequest( project );
- //handleProject( projectExecutionRequest, response );
+ try
+ {
+ MavenExecutionResponse response = handleProject( projectExecutionRequest );
- if ( response.isExecutionFailure() )
+ if ( response.isExecutionFailure() )
+ {
+ return response;
+ }
+ }
+ catch ( Exception e )
{
- break;
+ throw new ReactorException( "Error executing project within the reactor", e );
}
+
}
+
+ // TODO: not really satisfactory
+ return null;
}
public MavenProject getProject( File pom, ArtifactRepository localRepository )