diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java index 45fe047001a0..07a9c782abd3 100644 --- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java +++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java @@ -104,6 +104,7 @@ import java.io.IOException; import java.io.InputStream; import java.io.PrintStream; +import java.nio.charset.Charset; import java.nio.file.Files; import java.util.ArrayList; import java.util.Collections; @@ -387,7 +388,7 @@ void cli( CliRequest cliRequest ) if ( configFile.isFile() ) { - for ( String arg : new String( Files.readAllBytes( configFile.toPath() ) ).split( "\\s+" ) ) + for ( String arg : Files.readAllLines( configFile.toPath(), Charset.defaultCharset() ) ) { if ( !arg.isEmpty() ) { diff --git a/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java b/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java index 164b85a6e94a..4191e8880a19 100644 --- a/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java +++ b/maven-embedder/src/test/java/org/apache/maven/cli/MavenCliTest.java @@ -195,8 +195,10 @@ public void testMavenConfigInvalid() /** * Read .mvn/maven.config with the following definitions: *
- * -T 3
+ * -T
+ * 3
* -Drevision=1.3.0
+ * "-Dlabel=Apache Maven"
*
* and check if the {@code -T 3} option can be overwritten via command line
* argument.
@@ -221,8 +223,10 @@ public void testMVNConfigurationThreadCanBeOverwrittenViaCommandLine()
/**
* Read .mvn/maven.config with the following definitions:
*
- * -T 3
+ * -T
+ * 3
* -Drevision=1.3.0
+ * "-Dlabel=Apache Maven"
*
* and check if the {@code -Drevision-1.3.0} option can be overwritten via command line
* argument.
@@ -249,8 +253,10 @@ public void testMVNConfigurationDefinedPropertiesCanBeOverwrittenViaCommandLine(
/**
* Read .mvn/maven.config with the following definitions:
*
- * -T 3
+ * -T
+ * 3
* -Drevision=1.3.0
+ * "-Dlabel=Apache Maven"
*
* and check if the {@code -Drevision-1.3.0} option can be overwritten via command line
* argument.
@@ -277,8 +283,10 @@ public void testMVNConfigurationCLIRepeatedPropertiesLastWins()
/**
* Read .mvn/maven.config with the following definitions:
*
- * -T 3
+ * -T
+ * 3
* -Drevision=1.3.0
+ * "-Dlabel=Apache Maven"
*
* and check if the {@code -Drevision-1.3.0} option can be overwritten via command line argument when there are
* funky arguments present.
@@ -300,11 +308,14 @@ public void testMVNConfigurationFunkyArguments()
cli.cli( request );
cli.properties( request );
+ assertEquals( "3", request.commandLine.getOptionValue( CLIManager.THREADS ) );
+
String revision = System.getProperty( "revision" );
assertEquals( "8.2.0", revision );
assertEquals( "bar ", request.getSystemProperties().getProperty( "foo" ) );
assertEquals( "bar two", request.getSystemProperties().getProperty( "foo2" ) );
+ assertEquals( "Apache Maven", request.getSystemProperties().getProperty( "label" ) );
assertEquals( "-Dpom.xml", request.getCommandLine().getOptionValue( CLIManager.ALTERNATE_POM_FILE ) );
}
diff --git a/maven-embedder/src/test/projects/config/.mvn/maven.config b/maven-embedder/src/test/projects/config/.mvn/maven.config
index 3d0f13b2cd5c..280d57794f14 100644
--- a/maven-embedder/src/test/projects/config/.mvn/maven.config
+++ b/maven-embedder/src/test/projects/config/.mvn/maven.config
@@ -1,2 +1,3 @@
--T8 --builder
- multithreaded
+-T8
+--builder
+multithreaded
diff --git a/maven-embedder/src/test/projects/mavenConfigProperties/.mvn/maven.config b/maven-embedder/src/test/projects/mavenConfigProperties/.mvn/maven.config
index c73de53aebe0..82570230fd24 100644
--- a/maven-embedder/src/test/projects/mavenConfigProperties/.mvn/maven.config
+++ b/maven-embedder/src/test/projects/mavenConfigProperties/.mvn/maven.config
@@ -1,3 +1,5 @@
--T 3
+-T
+3
-Drevision=1.3.0
+"-Dlabel=Apache Maven"