Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
Hi,
When using a custom Surefire provider with Surefire (not Failsafe), the "provider classpath" contains only the provider and surefire-api. However, when using a custom provider with Failsafe, the provider class path ends up including a lot more... it seems like perhaps all plugins that are loaded? This has caused some mayhem for me when using a custom provider in projects that use a specific version of SLF4J... because then failsafe forces 1.5.6 to be loaded (from this process of incorrectly finding the custom provider), causing a crash.
It is a simple fix (3 lines in AbstractSurefireMojo - it had the name of the Surefire plugin hardcoded, which isn't correct when it's actually Failsafe). I've got a patched fork of master on GitHub (https://github.com/jon-bell/maven-surefire/commit/04f66cdd828d131a028eb400d1ed26fe104fe3f2) that fixes it and an integration test that demonstrates the flaw. I am not 100% sure on the formatting of the integration test (i.e., I am opening a JIRA ticket so that I suppose I can name it under the JIRA issue? How should I specify the current version of surefire in the integration test package?) - if the fix is welcome against master I'd be happy to open a PR on GitHub. I am also happy to merge against a different branch if it's more helpful.
Attachments
Issue Links
- links to