You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ti...@apache.org on 2020/05/19 19:20:10 UTC
[maven-surefire] 02/02: alter the arg file
This is an automated email from the ASF dual-hosted git repository.
tibordigana pushed a commit to branch SUREFIRE-1733
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git
commit b6c2974b6774fbe7613927bd22575c67bd9d02d9
Author: tibordigana <ti...@apache.org>
AuthorDate: Sat May 16 23:37:24 2020 +0200
alter the arg file
---
.../plugin/surefire/AbstractSurefireMojo.java | 7 +--
.../ModularClasspathForkConfiguration.java | 60 ++++++++++++----------
.../ModularClasspathForkConfigurationTest.java | 2 +-
3 files changed, 39 insertions(+), 30 deletions(-)
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java
index 8ab5d64..003da19 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java
@@ -1407,8 +1407,8 @@ public abstract class AbstractSurefireMojo
}
}
- private boolean canExecuteProviderWithModularPath( Platform platform,
- ResolvePathResultWrapper resolvedJavaModularityResult )
+ private boolean canExecuteProviderWithModularPath( @Nonnull Platform platform,
+ @Nonnull ResolvePathResultWrapper resolvedJavaModularityResult )
{
return useModulePath()
&& platform.getJdkExecAttributesForTests().isJava9AtLeast()
@@ -2410,7 +2410,8 @@ public abstract class AbstractSurefireMojo
reuseForks,
platform,
getConsoleLogger(),
- forkNode );
+ forkNode,
+ resolvedJavaModularityResult.isMainModuleDescriptor() );
}
else if ( getClassLoaderConfiguration().isManifestOnlyJarRequestedAndUsable() )
{
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ModularClasspathForkConfiguration.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ModularClasspathForkConfiguration.java
index 52729c3..a8ca9ac 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ModularClasspathForkConfiguration.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ModularClasspathForkConfiguration.java
@@ -55,6 +55,8 @@ import static org.apache.maven.surefire.api.util.internal.StringUtils.NL;
public class ModularClasspathForkConfiguration
extends DefaultForkConfiguration
{
+ private final boolean mainModuleDescriptor;
+
@SuppressWarnings( "checkstyle:parameternumber" )
public ModularClasspathForkConfiguration( @Nonnull Classpath bootClasspath,
@Nonnull File tempDirectory,
@@ -69,11 +71,14 @@ public class ModularClasspathForkConfiguration
boolean reuseForks,
@Nonnull Platform pluginPlatform,
@Nonnull ConsoleLogger log,
- @Nonnull ForkNodeFactory forkNodeFactory )
+ @Nonnull ForkNodeFactory forkNodeFactory,
+ boolean mainModuleDescriptor )
{
super( bootClasspath, tempDirectory, debugLine, workingDirectory, modelProperties, argLine,
environmentVariables, excludedEnvironmentVariables, debug, forkCount, reuseForks, pluginPlatform, log,
forkNodeFactory );
+
+ this.mainModuleDescriptor = mainModuleDescriptor;
}
@Override
@@ -167,39 +172,42 @@ public class ModularClasspathForkConfiguration
.append( NL );
}
- args.append( "--patch-module" )
- .append( NL )
- .append( moduleName )
- .append( '=' )
- .append( '"' )
- .append( replace( patchFile.getPath(), "\\", "\\\\" ) )
- .append( '"' )
- .append( NL );
-
- for ( String pkg : packages )
+ if ( mainModuleDescriptor )
{
- args.append( "--add-exports" )
+ args.append( "--patch-module" )
+ .append( NL )
+ .append( moduleName )
+ .append( '=' )
+ .append( '"' )
+ .append( replace( patchFile.getPath(), "\\", "\\\\" ) )
+ .append( '"' )
+ .append( NL );
+
+ for ( String pkg : packages )
+ {
+ args.append( "--add-exports" )
+ .append( NL )
+ .append( moduleName )
+ .append( '/' )
+ .append( pkg )
+ .append( '=' )
+ .append( "ALL-UNNAMED" )
+ .append( NL );
+ }
+
+ args.append( "--add-modules" )
+ .append( NL )
+ .append( moduleName )
+ .append( NL );
+
+ args.append( "--add-reads" )
.append( NL )
.append( moduleName )
- .append( '/' )
- .append( pkg )
.append( '=' )
.append( "ALL-UNNAMED" )
.append( NL );
}
- args.append( "--add-modules" )
- .append( NL )
- .append( moduleName )
- .append( NL );
-
- args.append( "--add-reads" )
- .append( NL )
- .append( moduleName )
- .append( '=' )
- .append( "ALL-UNNAMED" )
- .append( NL );
-
args.append( startClassName );
String argsFileContent = args.toString();
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ModularClasspathForkConfigurationTest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ModularClasspathForkConfigurationTest.java
index cfa7dce..af317c2 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ModularClasspathForkConfigurationTest.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ModularClasspathForkConfigurationTest.java
@@ -68,7 +68,7 @@ public class ModularClasspathForkConfigurationTest
ModularClasspathForkConfiguration config = new ModularClasspathForkConfiguration( booter, tmp, "", pwd,
new Properties(), "",
Collections.<String, String>emptyMap(), new String[0], true, 1, true,
- new Platform(), new NullConsoleLogger(), mock( ForkNodeFactory.class ) );
+ new Platform(), new NullConsoleLogger(), mock( ForkNodeFactory.class ), true );
File patchFile = new File( "target" + separatorChar + "test-classes" );
File descriptor = new File( tmp, "module-info.class" );