in src/main/java/org/apache/maven/shared/verifier/ForkedLauncher.java [166:198]
public String getMavenVersion()
throws IOException, LauncherException
{
File logFile;
try
{
logFile = File.createTempFile( "maven", "log" );
}
catch ( IOException e )
{
throw new LauncherException( "Error creating temp file", e );
}
// disable EMMA runtime controller port allocation, should be harmless if EMMA is not used
Map<String, String> envVars = Collections.singletonMap( "MAVEN_OPTS", "-Demma.rt.control=false" );
run( new String[] { "--version" }, new Properties(), envVars, null, logFile );
List<String> logLines = FileUtils.loadFile( logFile );
// noinspection ResultOfMethodCallIgnored
logFile.delete();
String version = extractMavenVersion( logLines );
if ( version == null )
{
throw new LauncherException( "Illegal Maven output: String 'Maven' not found in the following output:\n"
+ StringUtils.join( logLines.iterator(), "\n" ) );
}
else
{
return version;
}
}