Skip to content

Add Surefire Provider Classpath to Eclipse test classpath#2116

Draft
kwin wants to merge 4 commits intomainfrom
feature/surefire-provider-classpath
Draft

Add Surefire Provider Classpath to Eclipse test classpath#2116
kwin wants to merge 4 commits intomainfrom
feature/surefire-provider-classpath

Conversation

@kwin
Copy link
Member

@kwin kwin commented Jan 2, 2026

Deprecate duplicate constants (defined in
org.eclipse.jdt.core.IClasspathAttribute)

This closes #2112

@github-actions
Copy link

github-actions bot commented Jan 2, 2026

Test Results

  330 files  ±0    330 suites  ±0   1h 22m 19s ⏱️ + 8m 45s
  695 tests +1    677 ✅ +1  16 💤 ±0  1 ❌ ±0  1 🔥 ±0 
2 085 runs  +3  2 033 ✅ +1  48 💤 ±0  3 ❌ +2  1 🔥 ±0 

For more details on these failures and errors, see this check.

Results for commit f3adca8. ± Comparison against base commit 5beb82e.

This pull request removes 10 and adds 11 tests. Note that renamed tests count towards both.
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failSafe_config_when_created[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failSafe_config_when_created[1]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failsafe_config[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failsafe_config[1]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config[1]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config_when_created[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config_when_created[1]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_deferred_variable_are_resolved[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_deferred_variable_are_resolved[1]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failSafe_config_when_created[org.eclipse.jdt.junit.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failSafe_config_when_created[org.testng.eclipse.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failsafe_config[org.eclipse.jdt.junit.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failsafe_config[org.testng.eclipse.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config[org.eclipse.jdt.junit.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config[org.testng.eclipse.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config_when_created[org.eclipse.jdt.junit.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config_when_created[org.testng.eclipse.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_deferred_variable_are_resolved[org.eclipse.jdt.junit.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_deferred_variable_are_resolved[org.testng.eclipse.launchconfig]
…
This pull request removes 5 skipped tests and adds 5 skipped tests. Note that renamed tests count towards both.
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failSafe_config_when_created[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failsafe_config[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config_when_created[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_deferred_variable_are_resolved[0]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failSafe_config_when_created[org.testng.eclipse.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_failsafe_config[org.testng.eclipse.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config[org.testng.eclipse.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_configuration_must_be_updated_with_surefire_config_when_created[org.testng.eclipse.launchconfig]
org.eclipse.m2e.jdt.tests.UnitTestLaunchConfigConfigurationTest ‑ test_deferred_variable_are_resolved[org.testng.eclipse.launchconfig]

♻️ This comment has been updated with latest results.

@eclipse-m2e-bot
Copy link
Contributor

eclipse-m2e-bot commented Jan 2, 2026

This pull request changes some projects for the first time in this development cycle.
Therefore the following files need a version increment:

org.eclipse.m2e.jdt/META-INF/MANIFEST.MF

An additional commit containing all the necessary changes was pushed to the top of this PR's branch. To obtain these changes (for example if you want to push more changes) either fetch from your fork or apply the git patch.

Git patch
From fc86a5b22378b0050b4e4de87f2d460b06632299 Mon Sep 17 00:00:00 2001
From: Eclipse M2E Bot <m2e-bot@eclipse.org>
Date: Fri, 2 Jan 2026 19:59:56 +0000
Subject: [PATCH] Version bump(s) for null object or invalid expression stream


diff --git a/org.eclipse.m2e.jdt/META-INF/MANIFEST.MF b/org.eclipse.m2e.jdt/META-INF/MANIFEST.MF
index f3222241..0109ba6b 100644
--- a/org.eclipse.m2e.jdt/META-INF/MANIFEST.MF
+++ b/org.eclipse.m2e.jdt/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: %Bundle-Name
 Bundle-SymbolicName: org.eclipse.m2e.jdt;singleton:=true
-Bundle-Version: 2.5.0.qualifier
+Bundle-Version: 2.5.100.qualifier
 Bundle-Localization: plugin
 Export-Package: org.eclipse.m2e.jdt,
  org.eclipse.m2e.jdt.internal;x-friends:="org.eclipse.m2e.jdt.ui",
-- 
2.52.0

Further information are available in Common Build Issues - Missing version increments.

@kwin
Copy link
Member Author

kwin commented Jan 2, 2026

Probably needs some cleanup in org.eclipse.m2e.jdt.internal.launch.MavenRuntimeClasspathProvider.addMissingJUnit5ExecutionDependencies(...)

@laeubi
Copy link
Member

laeubi commented Jan 2, 2026

@kwin can we have a testcase covering this feature?

@kwin
Copy link
Member Author

kwin commented Jan 2, 2026

Instead of polluting the testing classpath one should probably rather extend org.eclipse.m2e.jdt.internal.launch.MavenRuntimeClasspathProvider which is only used when executing tests (but not when compiling those).

@kwin kwin force-pushed the feature/surefire-provider-classpath branch from b6855d9 to e03d82d Compare January 2, 2026 19:56
@kwin kwin requested review from HannesWell and laeubi January 14, 2026 14:10
@kwin kwin marked this pull request as ready for review January 14, 2026 14:11
@kwin kwin force-pushed the feature/surefire-provider-classpath branch from f9092af to 8bcf724 Compare January 14, 2026 14:11
@kwin kwin marked this pull request as draft January 14, 2026 16:15
assertFalse(argLine.contains("@{titi.tata}")); // unresolved property is removed
}

@Test
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move to MavenRuntimeClasspathProviderTest

@kwin kwin force-pushed the feature/surefire-provider-classpath branch from 8bcf724 to 2036684 Compare January 15, 2026 12:39
@kwin kwin force-pushed the feature/surefire-provider-classpath branch from 67a6764 to f3adca8 Compare February 5, 2026 16:39
@kwin
Copy link
Member Author

kwin commented Feb 5, 2026

@laeubi I cannot reproduce the test issues locally. Any pointers how I can increase logging during CI build within the Eclipse tests? I want to see the DEBUG logs of category org.eclipse.m2e.jdt.internal.launch.MavenRuntimeClasspathProvider. Any pointers would be much appreciated.

@kwin
Copy link
Member Author

kwin commented Feb 5, 2026

For me there is never any SLF4J provider bound during test execution, probably related to loading order, as the target platform contains some SLF4J provider (logback) and SpiFly as well.

@laeubi
Copy link
Member

laeubi commented Feb 6, 2026

I cannot reproduce the test issues locally.

You mean in the IDE or when running maven?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

JUnit Vintage Engine not added to test classpath if only part of maven-surefire-plugin's plugin classpath

3 participants