-
Notifications
You must be signed in to change notification settings - Fork 41.4k
Closed as not planned
Closed as not planned
Copy link
Labels
for: external-projectFor an external project and not something we can fixFor an external project and not something we can fixstatus: declinedA suggestion or change that we don't feel we should currently applyA suggestion or change that we don't feel we should currently apply
Description
When using springboot-starter-parent 3.4.5 or 3.4.6 the versions of junit-jupiter 5.11.4 and the junit-jupiter version of maven-surfire-plugin (5.12.2) mismatch.
This can create issues because in the update to junit-jupiter 5.12.x they introduced a new class. See stacktrace below.
Steps to guarantee reproduction:
Include springboot-starter-parent 3.4.5 or 3.4.6
In your maven-failsafe-plugin or maven-surfire-plugin depend on
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit-jupiter.version}</version>
</dependency>
</dependencies>
</plugin>
Possible solutions
- Pin maven-surfire-plugin and maven-failsafe-plugin to version 3.5.2
- Update junit-jupiter to 5.12.x
org/junit/platform/engine/reporting/OutputDirectoryProvider
java.lang.NoClassDefFoundError: org/junit/platform/engine/reporting/OutputDirectoryProvider
at org.apache.maven.surefire.junitplatform.TestPlanScannerFilter.accept(TestPlanScannerFilter.java:47)
at org.apache.maven.surefire.api.util.DefaultScanResult.applyFilter(DefaultScanResult.java:87)
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.scanClasspath(JUnitPlatformProvider.java:144)
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:124)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
Caused by: java.lang.ClassNotFoundException: org.junit.platform.engine.reporting.OutputDirectoryProvider
Metadata
Metadata
Assignees
Labels
for: external-projectFor an external project and not something we can fixFor an external project and not something we can fixstatus: declinedA suggestion or change that we don't feel we should currently applyA suggestion or change that we don't feel we should currently apply