Uploaded image for project: 'Maven Surefire'
  1. Maven Surefire
  2. SUREFIRE-1396

Provider class path is incorrect for custom provider in Failsafe

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 2.20.1
    • 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

          Activity

            People

              tibordigana Tibor Digana
              jonbell Jonathan Bell
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: