Author: ifedorenko Date: Sun Nov 24 05:23:18 2013 New Revision: 1544914 URL: http://svn.apache.org/r1544914 Log: use MavenLauncher interface to execute build
Signed-off-by: Igor Fedorenko <i...@ifedorenko.com> Modified: maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/ForkedLauncher.java maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/Verifier.java Modified: maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/ForkedLauncher.java URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/ForkedLauncher.java?rev=1544914&r1=1544913&r2=1544914&view=diff ============================================================================== --- maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/ForkedLauncher.java (original) +++ maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/ForkedLauncher.java Sun Nov 24 05:23:18 2013 @@ -25,6 +25,7 @@ import java.io.IOException; import java.io.Writer; import java.util.Collections; import java.util.Map; + import org.apache.maven.shared.utils.cli.CommandLineException; import org.apache.maven.shared.utils.cli.CommandLineUtils; import org.apache.maven.shared.utils.cli.Commandline; @@ -42,14 +43,17 @@ class ForkedLauncher private final String executable; + private final Map<Object, Object> envVars; + public ForkedLauncher( String mavenHome ) { - this( mavenHome, false ); + this( mavenHome, Collections.<Object, Object> emptyMap(), false ); } - public ForkedLauncher( String mavenHome, boolean debugJvm ) + public ForkedLauncher( String mavenHome, Map<Object,Object> envVars, boolean debugJvm ) { this.mavenHome = mavenHome; + this.envVars = envVars; String script = debugJvm ? "mvnDebug" : "mvn"; @@ -122,7 +126,7 @@ class ForkedLauncher public int run( String[] cliArgs, String workingDirectory, File logFile ) throws IOException, LauncherException { - return run( cliArgs, Collections.<Object, Object> emptyMap(), workingDirectory, logFile ); + return run( cliArgs, envVars, workingDirectory, logFile ); } } Modified: maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/Verifier.java URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/Verifier.java?rev=1544914&r1=1544913&r2=1544914&view=diff ============================================================================== --- maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/Verifier.java (original) +++ maven/shared/trunk/maven-verifier/src/main/java/org/apache/maven/it/Verifier.java Sun Nov 24 05:23:18 2013 @@ -47,6 +47,12 @@ import java.util.StringTokenizer; import java.util.regex.Matcher; import java.util.regex.Pattern; +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.parsers.SAXParser; +import javax.xml.parsers.SAXParserFactory; + +import junit.framework.Assert; + import org.apache.maven.shared.utils.StringUtils; import org.apache.maven.shared.utils.cli.CommandLineException; import org.apache.maven.shared.utils.cli.CommandLineUtils; @@ -55,12 +61,6 @@ import org.apache.maven.shared.utils.cli import org.apache.maven.shared.utils.cli.WriterStreamConsumer; import org.apache.maven.shared.utils.io.FileUtils; import org.apache.maven.shared.utils.io.IOUtil; - -import javax.xml.parsers.ParserConfigurationException; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; - -import junit.framework.Assert; import org.xml.sax.InputSource; import org.xml.sax.SAXException; import org.xml.sax.SAXParseException; @@ -1322,6 +1322,33 @@ public class Verifier { String[] cliArgs = args.toArray( new String[args.size()] ); + MavenLauncher launcher = getMavenLauncher( envVars ); + + ret = launcher.run( cliArgs, getBasedir(), logFile ); + } + catch ( LauncherException e ) + { + throw new VerificationException( "Failed to execute Maven: " + e.getMessage(), e ); + } + catch ( IOException e ) + { + throw new VerificationException( e ); + } + + if ( ret > 0 ) + { + System.err.println( "Exit code: " + ret ); + + throw new VerificationException( + "Exit code was non-zero: " + ret + "; command line and log = \n" + new File( defaultMavenHome, + "bin/mvn" ) + " " + + StringUtils.join( args.iterator(), " " ) + "\n" + getLogContents( logFile ) ); + } + } + + private MavenLauncher getMavenLauncher( Map<Object,Object> envVars ) + throws LauncherException + { boolean fork; if ( forkJvm != null ) { @@ -1349,33 +1376,12 @@ public class Verifier { initEmbeddedLauncher(); - ret = embeddedLauncher.run( cliArgs, getBasedir(), logFile ); + return embeddedLauncher; } else { - ForkedLauncher launcher = new ForkedLauncher( defaultMavenHome, debugJvm ); - - ret = launcher.run( cliArgs, envVars, getBasedir(), logFile ); + return new ForkedLauncher( defaultMavenHome, envVars, debugJvm ); } - } - catch ( LauncherException e ) - { - throw new VerificationException( "Failed to execute Maven: " + e.getMessage(), e ); - } - catch ( IOException e ) - { - throw new VerificationException( e ); - } - - if ( ret > 0 ) - { - System.err.println( "Exit code: " + ret ); - - throw new VerificationException( - "Exit code was non-zero: " + ret + "; command line and log = \n" + new File( defaultMavenHome, - "bin/mvn" ) + " " - + StringUtils.join( args.iterator(), " " ) + "\n" + getLogContents( logFile ) ); - } } private void initEmbeddedLauncher()