From e9867d2dc906758acf67840691446c64026bc77d Mon Sep 17 00:00:00 2001 From: Guillaume Nodet Date: Wed, 29 Oct 2025 17:07:24 +0000 Subject: [PATCH 1/2] Remove duplicate integration test version output The TestSuiteOrdering static block was printing Maven version information every time the class was loaded, which happened multiple times: - Once from the outer Maven process (showing incorrect version) - Multiple times from forked JVMs (showing correct but redundant version) This change removes the console output while preserving essential functionality: - Still clears system properties for test isolation - Still sets maven.version system property (needed by some tests) - Still writes version info to target/info.txt for debugging Fixes the confusing duplicate output during integration test execution. --- .../apache/maven/it/TestSuiteOrdering.java | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java b/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java index 224b1e001f5e..605726ac543b 100644 --- a/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java +++ b/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java @@ -60,19 +60,16 @@ private static void infoProperty(PrintStream info, String property) { System.clearProperty("maven.conf"); System.clearProperty("classworlds.conf"); - Verifier verifier = new Verifier("", false); - String mavenVersion = verifier.getMavenVersion(); - String executable = verifier.getExecutable(); - ExecutorHelper.Mode defaultMode = verifier.getDefaultMode(); - - System.out.println("Running integration tests for Maven " + mavenVersion + System.lineSeparator() - + "\tusing Maven executable: " + executable + System.lineSeparator() - + "\twith verifier.forkMode: " + defaultMode); - - System.setProperty("maven.version", mavenVersion); + // Set maven.version system property (needed by some tests) + try { + Verifier verifier = new Verifier("", false); + String mavenVersion = verifier.getMavenVersion(); + System.setProperty("maven.version", mavenVersion); + } catch (Exception e) { + // If we can't get the Maven version, continue without setting it + } String basedir = System.getProperty("basedir", "."); - try (PrintStream info = new PrintStream(Files.newOutputStream(Paths.get(basedir, "target/info.txt")))) { infoProperty(info, "maven.version"); infoProperty(info, "java.version"); From 56b58cbd241090ab26842086eb164013b9db62cc Mon Sep 17 00:00:00 2001 From: Guillaume Nodet Date: Thu, 30 Oct 2025 09:09:17 +0100 Subject: [PATCH 2/2] We should still fail if we can't get maven version --- .../java/org/apache/maven/it/TestSuiteOrdering.java | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java b/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java index 605726ac543b..dc173a18a1c4 100644 --- a/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java +++ b/its/core-it-suite/src/test/java/org/apache/maven/it/TestSuiteOrdering.java @@ -24,8 +24,6 @@ import java.util.Comparator; import java.util.regex.Matcher; import java.util.regex.Pattern; - -import org.apache.maven.cling.executor.ExecutorHelper; import org.junit.jupiter.api.ClassDescriptor; import org.junit.jupiter.api.ClassOrderer; import org.junit.jupiter.api.ClassOrdererContext; @@ -61,13 +59,9 @@ private static void infoProperty(PrintStream info, String property) { System.clearProperty("classworlds.conf"); // Set maven.version system property (needed by some tests) - try { - Verifier verifier = new Verifier("", false); - String mavenVersion = verifier.getMavenVersion(); - System.setProperty("maven.version", mavenVersion); - } catch (Exception e) { - // If we can't get the Maven version, continue without setting it - } + Verifier verifier = new Verifier("", false); + String mavenVersion = verifier.getMavenVersion(); + System.setProperty("maven.version", mavenVersion); String basedir = System.getProperty("basedir", "."); try (PrintStream info = new PrintStream(Files.newOutputStream(Paths.get(basedir, "target/info.txt")))) {