This is an automated email from the ASF dual-hosted git repository. slachiewicz pushed a commit to branch mvn4rc5 in repository https://gitbox.apache.org/repos/asf/maven-compiler-plugin.git
commit f875c120c3f9ee5748be7d12b90f1d32dae983bd Author: Sylwester Lachiewicz <[email protected]> AuthorDate: Sun Jun 28 23:54:04 2026 +0200 Update testCompile mojo configuration and bump Maven version to 4.0.0-rc-5 --- .github/workflows/maven-verify.yml | 4 +-- pom.xml | 2 +- .../plugin/compiler/CompilerMojoTestCase.java | 37 +++++++++------------- 3 files changed, 18 insertions(+), 25 deletions(-) diff --git a/.github/workflows/maven-verify.yml b/.github/workflows/maven-verify.yml index 5cc2570..702e30a 100644 --- a/.github/workflows/maven-verify.yml +++ b/.github/workflows/maven-verify.yml @@ -28,8 +28,8 @@ jobs: with: jdk-distribution-matrix: '[ "temurin", "zulu", "microsoft", "adopt-openj9" ]' maven4-build: true - maven4-version: '4.0.0-rc-4' # the same as used in project + maven4-version: '4.0.0-rc-5' # the same as used in project matrix-exclude: '[ { "jdk": "25", "distribution": "adopt-openj9" }, - { "jdk": "25", "distribution": "microsoft"} + { "jdk": "25", "distribution": "microsoft"} ]' diff --git a/pom.xml b/pom.xml index 6b1472b..7ba5592 100644 --- a/pom.xml +++ b/pom.xml @@ -82,7 +82,7 @@ under the License. <properties> <javaVersion>17</javaVersion> - <mavenVersion>4.0.0-rc-4</mavenVersion> + <mavenVersion>4.0.0-rc-5</mavenVersion> <asmVersion>9.10.1</asmVersion> <guiceVersion>7.0.0</guiceVersion> diff --git a/src/test/java/org/apache/maven/plugin/compiler/CompilerMojoTestCase.java b/src/test/java/org/apache/maven/plugin/compiler/CompilerMojoTestCase.java index 744f796..ececdf0 100644 --- a/src/test/java/org/apache/maven/plugin/compiler/CompilerMojoTestCase.java +++ b/src/test/java/org/apache/maven/plugin/compiler/CompilerMojoTestCase.java @@ -129,9 +129,7 @@ public class CompilerMojoTestCase { @Basedir("${basedir}/target/test-classes/unit/compiler-basic-test") public void testCompilerBasic( @InjectMojo(goal = "compile", pom = "plugin-config.xml") CompilerMojo compileMojo, - @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") - @MojoParameter(name = "compileSourceRoots", value = "${project.basedir}/src/test/java") - TestCompilerMojo testCompileMojo) { + @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") TestCompilerMojo testCompileMojo) { Log log = mock(Log.class); compileMojo.logger = log; @@ -142,6 +140,7 @@ public class CompilerMojoTestCase { session.getArtifactPath(compileMojo.projectArtifact).isPresent(), "MCOMPILER-94: artifact file should only be null if there is nothing to compile"); + testCompileMojo.compileSourceRoots = List.of(MojoExtension.getBasedir() + "/src/test/java"); testCompileMojo.execute(); assertOutputFileExists(testCompileMojo, "foo", "TestCompile0Test.class"); assertOutputFileDoesNotExist(compileMojo, "foo", "TestCompile0Test.class"); @@ -190,15 +189,14 @@ public class CompilerMojoTestCase { @Basedir("${basedir}/target/test-classes/unit/compiler-includes-excludes-test") public void testCompilerIncludesExcludes( @InjectMojo(goal = "compile", pom = "plugin-config.xml") CompilerMojo compileMojo, - @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") - @MojoParameter(name = "compileSourceRoots", value = "${project.basedir}/src/test/java") - TestCompilerMojo testCompileMojo) { + @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") TestCompilerMojo testCompileMojo) { compileMojo.execute(); assertOutputFileDoesNotExist(compileMojo, "foo", "TestCompile2.class"); assertOutputFileDoesNotExist(compileMojo, "foo", "TestCompile3.class"); assertOutputFileExists(compileMojo, "foo", "TestCompile4.class"); + testCompileMojo.compileSourceRoots = List.of(MojoExtension.getBasedir() + "/src/test/java"); testCompileMojo.execute(); assertOutputFileDoesNotExist(testCompileMojo, "foo", "TestCompile2TestCase.class"); assertOutputFileDoesNotExist(testCompileMojo, "foo", "TestCompile3TestCase.class"); @@ -213,9 +211,7 @@ public class CompilerMojoTestCase { @Basedir("${basedir}/target/test-classes/unit/compiler-fork-test") public void testCompilerFork( @InjectMojo(goal = "compile", pom = "plugin-config.xml") CompilerMojo compileMojo, - @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") - @MojoParameter(name = "compileSourceRoots", value = "${project.basedir}/src/test/java") - TestCompilerMojo testCompileMojo) { + @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") TestCompilerMojo testCompileMojo) { // JAVA_HOME doesn't have to be on the PATH. String javaHome = System.getenv("JAVA_HOME"); @@ -227,6 +223,7 @@ public class CompilerMojoTestCase { compileMojo.execute(); assertOutputFileExists(compileMojo, "foo", "TestCompile1.class"); + testCompileMojo.compileSourceRoots = List.of(MojoExtension.getBasedir() + "/src/test/java"); testCompileMojo.execute(); assertOutputFileExists(testCompileMojo, "foo", "TestCompile1TestCase.class"); assertOutputFileDoesNotExist(compileMojo, "foo", "TestCompile1TestCase.class"); @@ -240,15 +237,14 @@ public class CompilerMojoTestCase { @Basedir("${basedir}/target/test-classes/unit/compiler-one-output-file-test") public void testOneOutputFileForAllInput( @InjectMojo(goal = "compile", pom = "plugin-config.xml") CompilerMojo compileMojo, - @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") - @MojoParameter(name = "compileSourceRoots", value = "${project.basedir}/src/test/java") - TestCompilerMojo testCompileMojo) { + @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") TestCompilerMojo testCompileMojo) { assertEquals(CompilerStub.COMPILER_ID, compileMojo.compilerId); compileMojo.execute(); assertCompilerStubOutputFileExists(compileMojo); - assertEquals(CompilerStub.COMPILER_ID, testCompileMojo.compilerId); + testCompileMojo.compilerId = CompilerStub.COMPILER_ID; + testCompileMojo.compileSourceRoots = List.of(MojoExtension.getBasedir() + "/src/test/java"); testCompileMojo.execute(); assertCompilerStubOutputFileExists(testCompileMojo); } @@ -318,14 +314,13 @@ public class CompilerMojoTestCase { @Basedir("${basedir}/target/test-classes/unit/compiler-modular-project") public void testModularProject( @InjectMojo(goal = "compile", pom = "plugin-config.xml") CompilerMojo compileMojo, - @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") - @MojoParameter(name = "compileSourceRoots", value = "${project.basedir}/src/test/java") - TestCompilerMojo testCompileMojo) { + @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") TestCompilerMojo testCompileMojo) { compileMojo.execute(); assertOutputFileExists(compileMojo, SourceDirectory.MODULE_INFO + SourceDirectory.CLASS_FILE_SUFFIX); assertOutputFileExists(compileMojo, "foo", "TestModular.class"); + testCompileMojo.compileSourceRoots = List.of(MojoExtension.getBasedir() + "/src/test/java"); testCompileMojo.execute(); assertOutputFileExists(testCompileMojo, "foo", "TestModularTestCase.class"); assertOutputFileDoesNotExist(compileMojo, "foo", "TestModularTestCase.class"); @@ -365,14 +360,13 @@ public class CompilerMojoTestCase { @Basedir("${basedir}/target/test-classes/unit/compiler-skip-main") public void testCompileSkipMain( @InjectMojo(goal = "compile", pom = "plugin-config.xml") CompilerMojo compileMojo, - @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") - @MojoParameter(name = "compileSourceRoots", value = "${project.basedir}/src/test/java") - TestCompilerMojo testCompileMojo) { + @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") TestCompilerMojo testCompileMojo) { compileMojo.skipMain = true; compileMojo.execute(); assertOutputFileDoesNotExist(compileMojo, "foo", "TestSkipMainCompile0.class"); + testCompileMojo.compileSourceRoots = List.of(MojoExtension.getBasedir() + "/src/test/java"); testCompileMojo.execute(); assertOutputFileExists(testCompileMojo, "foo", "TestSkipMainCompile0Test.class"); assertOutputFileDoesNotExist(compileMojo, "foo", "TestSkipMainCompile0Test.class"); @@ -386,9 +380,7 @@ public class CompilerMojoTestCase { @Basedir("${basedir}/target/test-classes/unit/compiler-skip-test") public void testCompileSkipTest( @InjectMojo(goal = "compile", pom = "plugin-config.xml") CompilerMojo compileMojo, - @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") - @MojoParameter(name = "compileSourceRoots", value = "${project.basedir}/src/test/java") - TestCompilerMojo testCompileMojo) { + @InjectMojo(goal = "testCompile", pom = "plugin-config.xml") TestCompilerMojo testCompileMojo) { compileMojo.execute(); assertOutputFileExists(compileMojo, "foo/TestSkipTestCompile0.class"); @@ -419,6 +411,7 @@ public class CompilerMojoTestCase { Map<String, String> props = new HashMap<>(); props.put("basedir", MojoExtension.getBasedir()); + props.put("project.basedir", MojoExtension.getBasedir()); doReturn(props).when(session).getUserProperties(); List<Path> artifacts = new ArrayList<>();
