You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by pg...@apache.org on 2011/07/17 15:16:12 UTC
svn commit: r1147597 - in
/maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli:
CLIReportingUtils.java MavenCli.java
Author: pgier
Date: Sun Jul 17 13:16:12 2011
New Revision: 1147597
URL: http://svn.apache.org/viewvc?rev=1147597&view=rev
Log:
[MNG-4112] Add properties "maven.version" and "maven.build.version" which contain the current version of Maven
Modified:
maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java
maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
Modified: maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java
URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java?rev=1147597&r1=1147596&r2=1147597&view=diff
==============================================================================
--- maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java (original)
+++ maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java Sun Jul 17 13:16:12 2011
@@ -47,14 +47,39 @@ public final class CLIReportingUtils
public static final int MS_PER_SEC = 1000;
public static final int SEC_PER_MIN = 60;
+
+ public static final String BUILD_VERSION_PROPERTY = "version";
public static void showVersion( PrintStream stdout )
{
Properties properties = getBuildProperties();
+ stdout.println( createMavenVersionString( properties ) );
- String timestamp = reduce( properties.getProperty( "timestamp" ) );
- String version = reduce( properties.getProperty( "version" ) );
- String rev = reduce( properties.getProperty( "buildNumber" ) );
+ stdout.println( "Maven home: " + System.getProperty( "maven.home", "<unknown maven home>" ) );
+
+ stdout.println( "Java version: " + System.getProperty( "java.version", "<unknown java version>" )
+ + ", vendor: " + System.getProperty( "java.vendor", "<unknown vendor>" ) );
+
+ stdout.println( "Java home: " + System.getProperty( "java.home", "<unknown java home>" ) );
+
+ stdout.println( "Default locale: " + Locale.getDefault() + ", platform encoding: "
+ + System.getProperty( "file.encoding", "<unknown encoding>" ) );
+
+ stdout.println( "OS name: \"" + Os.OS_NAME + "\", version: \"" + Os.OS_VERSION + "\", arch: \"" + Os.OS_ARCH
+ + "\", family: \"" + Os.OS_FAMILY + "\"" );
+ }
+
+ /**
+ * Create a human readable string containing the Maven version, buildnumber, and time of build
+ *
+ * @param buildProperties The build properties
+ * @return Readable build info
+ */
+ static String createMavenVersionString( Properties buildProperties )
+ {
+ String timestamp = reduce( buildProperties.getProperty( "timestamp" ) );
+ String version = reduce( buildProperties.getProperty( BUILD_VERSION_PROPERTY ) );
+ String rev = reduce( buildProperties.getProperty( "buildNumber" ) );
String msg = "Apache Maven ";
msg += ( version != null ? version : "<version unknown>" );
@@ -70,21 +95,7 @@ public final class CLIReportingUtils
}
msg += ")";
}
-
- stdout.println( msg );
-
- stdout.println( "Maven home: " + System.getProperty( "maven.home", "<unknown maven home>" ) );
-
- stdout.println( "Java version: " + System.getProperty( "java.version", "<unknown java version>" )
- + ", vendor: " + System.getProperty( "java.vendor", "<unknown vendor>" ) );
-
- stdout.println( "Java home: " + System.getProperty( "java.home", "<unknown java home>" ) );
-
- stdout.println( "Default locale: " + Locale.getDefault() + ", platform encoding: "
- + System.getProperty( "file.encoding", "<unknown encoding>" ) );
-
- stdout.println( "OS name: \"" + Os.OS_NAME + "\", version: \"" + Os.OS_VERSION + "\", arch: \"" + Os.OS_ARCH
- + "\", family: \"" + Os.OS_FAMILY + "\"" );
+ return msg;
}
private static String reduce( String s )
Modified: maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java?rev=1147597&r1=1147596&r2=1147597&view=diff
==============================================================================
--- maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java (original)
+++ maven/maven-3/trunk/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java Sun Jul 17 13:16:12 2011
@@ -1064,6 +1064,19 @@ public class MavenCli
}
systemProperties.putAll( System.getProperties() );
+
+ // ----------------------------------------------------------------------
+ // Properties containing info about the currently running version of Maven
+ // These override any corresponding properties set on the command line
+ // ----------------------------------------------------------------------
+
+ Properties buildProperties = CLIReportingUtils.getBuildProperties();
+
+ String mavenVersion = buildProperties.getProperty( CLIReportingUtils.BUILD_VERSION_PROPERTY );
+ systemProperties.setProperty( "maven.version", mavenVersion );
+
+ String mavenBuildVersion = CLIReportingUtils.createMavenVersionString( buildProperties );
+ systemProperties.setProperty( "maven.build.version", mavenBuildVersion );
}
private static void setCliProperty( String property, Properties properties )