Working on: MNG-607

o Added '-f' CLI option, to allow use of non-standard pom files, or spawning of a build from outside of the project dir.
o Added preferential processing of release-pom.xml over pom.xml if it exists (assumes that the current checkout is a release of the software)
o Moved all file discovery from MavenCli to DefaultMaven, to allow embedders to have access to this logic.
o Modified MavenExecutionRequest to add a flag for reactor-activation and the name of a non-standard pom to use, if appropriate.
o Removed getFiles() and getProjectFiles() from MavenExecutionRequest, since file discovery is now done in the DefaultMaven.
o Added integration tests to check preference of release-pom.xml in standalone and '-r' mode
o Added integration tests to check usage of '-f' option within and outside of the project directory
o Added processing for cli-options.txt to maven-core-it-verifier (Verifier.java) to allow specification of '-f' and '-r' in tests


NOTE: the release plugin still doesn't correctly remove the release-pom.xml from HEAD/trunk, since I don't have access to the SCM remove command from maven-scm. I'm waiting for Emmanuel to finish some API changes before moving to the new maven-scm version, and implementing this final step.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@225226 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
John Dennis Casey 2005-07-26 03:55:37 +00:00
parent 3251b41d8e
commit 4b1038de53
39 changed files with 511 additions and 73 deletions

View File

@ -160,30 +160,34 @@ public class Verifier
{ {
List lines = new ArrayList(); List lines = new ArrayList();
try if ( file.exists() )
{ {
BufferedReader reader = new BufferedReader( new FileReader( file ) ); try
String line = "";
while ( ( line = reader.readLine() ) != null )
{ {
line = line.trim(); BufferedReader reader = new BufferedReader( new FileReader( file ) );
if ( line.startsWith( "#" ) || line.length() == 0 ) String line = "";
while ( ( line = reader.readLine() ) != null )
{ {
continue; line = line.trim();
if ( line.startsWith( "#" ) || line.length() == 0 )
{
continue;
}
lines.addAll( replaceArtifacts( line ) );
} }
lines.addAll( replaceArtifacts( line ) ); reader.close();
}
catch ( Exception e )
{
throw new VerificationException( e );
} }
reader.close();
}
catch ( Exception e )
{
throw new VerificationException( e );
} }
return lines; return lines;
} }
@ -461,6 +465,8 @@ public class Verifier
String mavenHome = System.getProperty( "maven.home" ); String mavenHome = System.getProperty( "maven.home" );
List goals = loadFile( basedir, filename ); List goals = loadFile( basedir, filename );
List cliOptions = loadFile( basedir, "cli-options.txt" );
if ( goals.size() == 0 ) if ( goals.size() == 0 )
{ {
@ -493,6 +499,12 @@ public class Verifier
cli.setExecutable( executable ); cli.setExecutable( executable );
for ( Iterator it = cliOptions.iterator(); it.hasNext(); )
{
String key = (String) it.next();
cli.createArgument().setValue(key);
}
cli.createArgument().setValue( "-e" ); cli.createArgument().setValue( "-e" );
// cli.createArgument().setValue( "-X" ); // cli.createArgument().setValue( "-X" );
@ -507,7 +519,7 @@ public class Verifier
String key = (String) i.next(); String key = (String) i.next();
cli.createArgument().setLine( "-D" + key + "=" + properties.getProperty( key ) ); cli.createArgument().setLine( "-D" + key + "=" + properties.getProperty( key ) );
} }
// Note: Make sure that the repo is surrounded by quotes as it can possibly have // Note: Make sure that the repo is surrounded by quotes as it can possibly have
// spaces in its path. // spaces in its path.
cli.createArgument().setLine( "-Dmaven.repo.local=" + "\"" + localRepo + "\"" ); cli.createArgument().setLine( "-Dmaven.repo.local=" + "\"" + localRepo + "\"" );
@ -607,7 +619,7 @@ public class Verifier
verifier.executeHook( "prebuild-hook.txt" ); verifier.executeHook( "prebuild-hook.txt" );
Properties properties = verifier.loadProperties( "system.properties" ); Properties properties = verifier.loadProperties( "system.properties" );
Properties controlProperties = verifier.loadProperties( "verifier.properties" ); Properties controlProperties = verifier.loadProperties( "verifier.properties" );
boolean chokeOnErrorOutput = Boolean.valueOf( controlProperties.getProperty( "failOnErrorOutput", "true" ) ).booleanValue(); boolean chokeOnErrorOutput = Boolean.valueOf( controlProperties.getProperty( "failOnErrorOutput", "true" ) ).booleanValue();

View File

@ -105,6 +105,17 @@ it0034: Test version range junit [3.7,) resolves to 3.8.1
it0035: Test artifact relocation. it0035: Test artifact relocation.
it0036: Test building from release-pom.xml when it's available
it0037: Test building with alternate pom file using '-f'
it0038: Test building project from outside the project directory using '-f'
option
it0039: Test reactor for projects that have release-pom.xml in addition to
pom.xml. The release-pom.xml file should be chosen above pom.xml for
these projects in the build.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
- generated sources - generated sources

View File

@ -1,3 +1,7 @@
it0039
it0038
it0037
it0036
it0035 it0035
it0034 it0034
it0033 it0033

View File

@ -0,0 +1 @@
target/maven-core-it0036-1.0.jar

View File

@ -0,0 +1 @@
package

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0036</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0036</artifactId>
<packaging>jar</packaging>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
public class Person
{
private String name;
public void setName( String name )
{
this.name = name;
}
public String getName()
{
return name;
}
}

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
import junit.framework.TestCase;
public class PersonTest
extends TestCase
{
public void testPerson()
{
Person person = new Person();
person.setName( "foo" );
assertEquals( "foo", person.getName() );
}
}

View File

@ -0,0 +1 @@
-f pom2.xml

View File

@ -0,0 +1 @@
target/maven-core-it0037-1.0-build2.jar

View File

@ -0,0 +1 @@
package

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0037</artifactId>
<packaging>jar</packaging>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0037</artifactId>
<packaging>jar</packaging>
<version>1.0-build2</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
public class Person
{
private String name;
public void setName( String name )
{
this.name = name;
}
public String getName()
{
return name;
}
}

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
import junit.framework.TestCase;
public class PersonTest
extends TestCase
{
public void testPerson()
{
Person person = new Person();
person.setName( "foo" );
assertEquals( "foo", person.getName() );
}
}

View File

@ -0,0 +1 @@
-f project/pom2.xml

View File

@ -0,0 +1 @@
project/target/maven-core-it0037-1.0-build2.jar

View File

@ -0,0 +1 @@
package

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0037</artifactId>
<packaging>jar</packaging>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0037</artifactId>
<packaging>jar</packaging>
<version>1.0-build2</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
public class Person
{
private String name;
public void setName( String name )
{
this.name = name;
}
public String getName()
{
return name;
}
}

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
import junit.framework.TestCase;
public class PersonTest
extends TestCase
{
public void testPerson()
{
Person person = new Person();
person.setName( "foo" );
assertEquals( "foo", person.getName() );
}
}

View File

@ -0,0 +1 @@
-r

View File

@ -0,0 +1,2 @@
project/target/maven-core-it0039-p1-1.0.jar
project2/target/maven-core-it0039-p2-1.0.jar

View File

@ -0,0 +1 @@
package

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0039-p1</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0039-p1</artifactId>
<packaging>jar</packaging>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
public class Person
{
private String name;
public void setName( String name )
{
this.name = name;
}
public String getName()
{
return name;
}
}

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
import junit.framework.TestCase;
public class PersonTest
extends TestCase
{
public void testPerson()
{
Person person = new Person();
person.setName( "foo" );
assertEquals( "foo", person.getName() );
}
}

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0039-p2</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
<model>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core-it0039-p2</artifactId>
<packaging>jar</packaging>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
</model>

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
public class Person
{
private String name;
public void setName( String name )
{
this.name = name;
}
public String getName()
{
return name;
}
}

View File

@ -0,0 +1,16 @@
package org.apache.maven.it0000;
import junit.framework.TestCase;
public class PersonTest
extends TestCase
{
public void testPerson()
{
Person person = new Person();
person.setName( "foo" );
assertEquals( "foo", person.getName() );
}
}

View File

@ -53,12 +53,14 @@ import org.codehaus.plexus.context.Context;
import org.codehaus.plexus.context.ContextException; import org.codehaus.plexus.context.ContextException;
import org.codehaus.plexus.logging.AbstractLogEnabled; import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable; import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.dag.CycleDetectedException; import org.codehaus.plexus.util.dag.CycleDetectedException;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException; import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections;
import java.util.Date; import java.util.Date;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
@ -73,6 +75,8 @@ public class DefaultMaven
extends AbstractLogEnabled extends AbstractLogEnabled
implements Maven, Contextualizable implements Maven, Contextualizable
{ {
public static File userDir = new File( System.getProperty( "user.dir" ) );
// ---------------------------------------------------------------------- // ----------------------------------------------------------------------
// Components // Components
// ---------------------------------------------------------------------- // ----------------------------------------------------------------------
@ -129,7 +133,9 @@ public class DefaultMaven
try try
{ {
projects = collectProjects( request.getFiles(), request.getLocalRepository(), request.isRecursive(), List files = getProjectFiles( request );
projects = collectProjects( files, request.getLocalRepository(), request.isRecursive(),
request.getSettings() ); request.getSettings() );
projects = ProjectSorter.getSortedProjects( projects ); projects = ProjectSorter.getSortedProjects( projects );
@ -229,6 +235,11 @@ public class DefaultMaven
{ {
File file = (File) iterator.next(); File file = (File) iterator.next();
if ( RELEASE_POMv4.equals( file.getName() ) )
{
getLogger().info( "NOTE: Using release-pom: " + file + " in reactor build." );
}
MavenProject project = getProject( file, localRepository, settings ); MavenProject project = getProject( file, localRepository, settings );
if ( project.getPrerequesites() != null && project.getPrerequesites().getMaven() != null ) if ( project.getPrerequesites() != null && project.getPrerequesites().getMaven() != null )
@ -635,4 +646,77 @@ public class DefaultMaven
} }
return msg; return msg;
} }
private List getProjectFiles( MavenExecutionRequest request )
throws IOException
{
List files = Collections.EMPTY_LIST;
if ( request.isReactorActive() )
{
// TODO: should we now include the pom.xml in the current directory?
// String includes = System.getProperty( "maven.reactor.includes", "**/" + POMv4 );
// String excludes = System.getProperty( "maven.reactor.excludes", POMv4 );
String includes = System.getProperty( "maven.reactor.includes", "**/" + POMv4 + ",**/" + RELEASE_POMv4 );
String excludes = System.getProperty( "maven.reactor.excludes", POMv4 + "," + RELEASE_POMv4 );
files = FileUtils.getFiles( userDir, includes, excludes );
filterOneProjectFilePerDirectory( files );
// make sure there is consistent ordering on all platforms, rather than using the filesystem ordering
Collections.sort( files );
}
else if ( request.getPomFile() != null )
{
File projectFile = new File( request.getPomFile() ).getAbsoluteFile();
if ( projectFile.exists() )
{
files = Collections.singletonList( projectFile );
}
}
else
{
File projectFile = new File( userDir, RELEASE_POMv4 );
if ( !projectFile.exists() )
{
projectFile = new File( userDir, POMv4 );
}
if ( projectFile.exists() )
{
files = Collections.singletonList( projectFile );
}
}
return files;
}
private void filterOneProjectFilePerDirectory( List files )
{
List releaseDirs = new ArrayList();
for ( Iterator it = files.iterator(); it.hasNext(); )
{
File projectFile = (File) it.next();
if ( RELEASE_POMv4.equals( projectFile.getName() ) )
{
releaseDirs.add( projectFile.getParentFile() );
}
}
for ( Iterator it = files.iterator(); it.hasNext(); )
{
File projectFile = (File) it.next();
// remove pom.xml files where there is a sibling release-pom.xml file...
if ( !RELEASE_POMv4.equals( projectFile.getName() ) && releaseDirs.contains( projectFile.getParentFile() ) )
{
it.remove();
}
}
}
} }

View File

@ -28,6 +28,10 @@ public interface Maven
{ {
static String ROLE = Maven.class.getName(); static String ROLE = Maven.class.getName();
String POMv4 = "pom.xml";
String RELEASE_POMv4 = "release-pom.xml";
MavenExecutionResponse execute( MavenExecutionRequest request ) MavenExecutionResponse execute( MavenExecutionRequest request )
throws ReactorException; throws ReactorException;
} }

View File

@ -27,8 +27,8 @@ import org.apache.maven.Maven;
import org.apache.maven.artifact.manager.WagonManager; import org.apache.maven.artifact.manager.WagonManager;
import org.apache.maven.artifact.repository.ArtifactRepository; import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.ArtifactRepositoryFactory; import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy; import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout; import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.apache.maven.execution.DefaultMavenExecutionRequest; import org.apache.maven.execution.DefaultMavenExecutionRequest;
import org.apache.maven.execution.MavenExecutionRequest; import org.apache.maven.execution.MavenExecutionRequest;
@ -48,14 +48,11 @@ import org.codehaus.plexus.component.repository.exception.ComponentLookupExcepti
import org.codehaus.plexus.embed.Embedder; import org.codehaus.plexus.embed.Embedder;
import org.codehaus.plexus.logging.Logger; import org.codehaus.plexus.logging.Logger;
import org.codehaus.plexus.logging.LoggerManager; import org.codehaus.plexus.logging.LoggerManager;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException; import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.util.Collections;
import java.util.List;
import java.util.Properties; import java.util.Properties;
/** /**
@ -64,8 +61,6 @@ import java.util.Properties;
*/ */
public class MavenCli public class MavenCli
{ {
public static final String POMv4 = "pom.xml";
public static File userDir = new File( System.getProperty( "user.dir" ) ); public static File userDir = new File( System.getProperty( "user.dir" ) );
public static int main( String[] args, ClassWorld classWorld ) public static int main( String[] args, ClassWorld classWorld )
@ -218,17 +213,6 @@ public class MavenCli
settings.setUsePluginRegistry( false ); settings.setUsePluginRegistry( false );
} }
List projectFiles = null;
try
{
projectFiles = getProjectFiles( commandLine );
}
catch ( IOException e )
{
showFatalError( "Error locating project files for reactor execution", e, showErrors );
return 1;
}
Maven maven = null; Maven maven = null;
MavenExecutionRequest request = null; MavenExecutionRequest request = null;
LoggerManager manager = null; LoggerManager manager = null;
@ -241,7 +225,9 @@ public class MavenCli
manager.setThreshold( Logger.LEVEL_DEBUG ); manager.setThreshold( Logger.LEVEL_DEBUG );
} }
request = createRequest( projectFiles, embedder, commandLine, settings, eventDispatcher, manager ); request = createRequest( embedder, commandLine, settings, eventDispatcher, manager );
setProjectFileOptions( commandLine, request );
maven = createMavenInstance( embedder, settings.isInteractiveMode() ); maven = createMavenInstance( embedder, settings.isInteractiveMode() );
} }
@ -311,7 +297,7 @@ public class MavenCli
} }
} }
private static MavenExecutionRequest createRequest( List files, Embedder embedder, CommandLine commandLine, private static MavenExecutionRequest createRequest( Embedder embedder, CommandLine commandLine,
Settings settings, EventDispatcher eventDispatcher, Settings settings, EventDispatcher eventDispatcher,
LoggerManager manager ) LoggerManager manager )
throws ComponentLookupException throws ComponentLookupException
@ -321,7 +307,7 @@ public class MavenCli
ArtifactRepository localRepository = createLocalRepository( embedder, settings, commandLine ); ArtifactRepository localRepository = createLocalRepository( embedder, settings, commandLine );
request = new DefaultMavenExecutionRequest( localRepository, settings, eventDispatcher, request = new DefaultMavenExecutionRequest( localRepository, settings, eventDispatcher,
commandLine.getArgList(), files, userDir.getPath() ); commandLine.getArgList(), userDir.getPath() );
// TODO [BP]: do we set one per mojo? where to do it? // TODO [BP]: do we set one per mojo? where to do it?
Logger logger = manager.getLoggerForComponent( Mojo.ROLE ); Logger logger = manager.getLoggerForComponent( Mojo.ROLE );
@ -337,32 +323,16 @@ public class MavenCli
return request; return request;
} }
private static List getProjectFiles( CommandLine commandLine ) private static void setProjectFileOptions( CommandLine commandLine, MavenExecutionRequest request )
throws IOException
{ {
List files = Collections.EMPTY_LIST;
if ( commandLine.hasOption( CLIManager.REACTOR ) ) if ( commandLine.hasOption( CLIManager.REACTOR ) )
{ {
// TODO: should we now include the pom.xml in the current directory? request.setReactorActive( true );
String includes = System.getProperty( "maven.reactor.includes", "**/" + POMv4 );
String excludes = System.getProperty( "maven.reactor.excludes", POMv4 );
files = FileUtils.getFiles( userDir, includes, excludes );
// make sure there is consistent ordering on all platforms, rather than using the filesystem ordering
Collections.sort( files );
} }
else else if ( commandLine.hasOption( CLIManager.ALTERNATE_POM_FILE ) )
{ {
File projectFile = new File( userDir, POMv4 ); request.setPomFile( commandLine.getOptionValue( CLIManager.ALTERNATE_POM_FILE ) );
if ( projectFile.exists() )
{
files = Collections.singletonList( projectFile );
}
} }
return files;
} }
private static Maven createMavenInstance( Embedder embedder, boolean interactive ) private static Maven createMavenInstance( Embedder embedder, boolean interactive )
@ -497,6 +467,8 @@ public class MavenCli
static class CLIManager static class CLIManager
{ {
public static final char ALTERNATE_POM_FILE = 'f';
public static final char BATCH_MODE = 'B'; public static final char BATCH_MODE = 'B';
public static final char SET_SYSTEM_PROPERTY = 'D'; public static final char SET_SYSTEM_PROPERTY = 'D';
@ -540,6 +512,9 @@ public class MavenCli
public CLIManager() public CLIManager()
{ {
options = new Options(); options = new Options();
options.addOption( OptionBuilder.withLongOpt( "file").hasArg().withDescription( "Force the use of an alternate POM file." ).create( ALTERNATE_POM_FILE ) );
options.addOption( options.addOption(
OptionBuilder.withLongOpt( "define" ).hasArg().withDescription( "Define a system property" ).create( OptionBuilder.withLongOpt( "define" ).hasArg().withDescription( "Define a system property" ).create(
SET_SYSTEM_PROPERTY ) ); SET_SYSTEM_PROPERTY ) );

View File

@ -37,8 +37,6 @@ public class DefaultMavenExecutionRequest
private final List goals; private final List goals;
private final List files;
protected MavenSession session; protected MavenSession session;
private final EventDispatcher eventDispatcher; private final EventDispatcher eventDispatcher;
@ -49,8 +47,12 @@ public class DefaultMavenExecutionRequest
private boolean recursive = true; private boolean recursive = true;
private boolean reactorActive;
private String pomFilename;
public DefaultMavenExecutionRequest( ArtifactRepository localRepository, Settings settings, public DefaultMavenExecutionRequest( ArtifactRepository localRepository, Settings settings,
EventDispatcher eventDispatcher, List goals, List files, String baseDirectory ) EventDispatcher eventDispatcher, List goals, String baseDirectory )
{ {
this.localRepository = localRepository; this.localRepository = localRepository;
@ -60,8 +62,6 @@ public class DefaultMavenExecutionRequest
this.eventDispatcher = eventDispatcher; this.eventDispatcher = eventDispatcher;
this.files = files;
this.baseDirectory = baseDirectory; this.baseDirectory = baseDirectory;
} }
@ -104,11 +104,6 @@ public class DefaultMavenExecutionRequest
return session; return session;
} }
public List getProjectFiles()
{
return files;
}
public void setSession( MavenSession session ) public void setSession( MavenSession session )
{ {
this.session = session; this.session = session;
@ -124,8 +119,23 @@ public class DefaultMavenExecutionRequest
return eventDispatcher; return eventDispatcher;
} }
public List getFiles() public void setReactorActive( boolean reactorActive )
{ {
return files; this.reactorActive = reactorActive;
}
public boolean isReactorActive()
{
return reactorActive;
}
public void setPomFile( String pomFilename )
{
this.pomFilename = pomFilename;
}
public String getPomFile()
{
return pomFilename;
} }
} }

View File

@ -37,8 +37,6 @@ public interface MavenExecutionRequest
MavenSession getSession(); MavenSession getSession();
List getFiles();
void addEventMonitor( EventMonitor monitor ); void addEventMonitor( EventMonitor monitor );
EventDispatcher getEventDispatcher(); EventDispatcher getEventDispatcher();
@ -50,4 +48,12 @@ public interface MavenExecutionRequest
void setRecursive( boolean recursive ); void setRecursive( boolean recursive );
boolean isRecursive(); boolean isRecursive();
void setReactorActive( boolean reactorActive );
boolean isReactorActive();
void setPomFile( String pomFile );
String getPomFile();
} }