Java Maven failsafe插件失败,出现“故障”;找不到surefire引导程序“;

Java Maven failsafe插件失败,出现“故障”;找不到surefire引导程序“;,java,maven,integration-testing,Java,Maven,Integration Testing,从8月2日起,我们的Maven构建在Jenkins突然失败。我们无法解释为什么maven failsafe无法访问其依赖的“booter”插件 有人见过同样的东西吗 [INFO] [failsafe:integration-test {execution: run-integration-tests}] [INFO] Failsafe report directory: /var/lib/jenkins/workspace/Foo/integration-tests/target/failsaf

从8月2日起,我们的Maven构建在Jenkins突然失败。我们无法解释为什么maven failsafe无法访问其依赖的“booter”插件

有人见过同样的东西吗

[INFO] [failsafe:integration-test {execution: run-integration-tests}]
[INFO] Failsafe report directory: /var/lib/jenkins/workspace/Foo/integration-tests/target/failsafe-reports
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Unable to locate surefire-booter in the list of plugin artifacts
[INFO] ------------------------------------------------------------------------
[INFO] Trace
java.lang.RuntimeException: Unable to locate surefire-booter in the list of plugin artifacts
    at org.apache.maven.plugin.surefire.AbstractSurefireMojo.getForkConfiguration(AbstractSurefireMojo.java:1152)
    at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:655)
    at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAllProviders(AbstractSurefireMojo.java:647)
    at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:606)
    at org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:569)
    at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
    at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
    at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
    at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
    at org.codehaus.classworlds.Launcher.main(Launcher.java:375)

该问题仅限于Maven Failsafe 2.12.1,它显示该版本于8月1日晚些时候发布

解决方法是将POM中的版本固定到早期的2.12版本,或者您可能还想尝试更高版本,如2.12.2或2.12.3(此答案的发布日期)。我没有尝试过这些更高版本,而“2.12”是适合我的版本字符串

只需在POM中声明插件的位置添加所选版本


这大概是因为只有2.12.1有这个问题(AFAICT尚未诊断)

我使用Maven 2遇到了这个问题。切换到Maven 3解决了我的问题。Simon关于增加maven surefire插件的回答同样适用于maven 2。

跳过此线程。解决方案:我在版本2.20.1中遇到了同样的问题。降级到2.20修复了它