You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级SpringBoot至3.2.1后仅Jenkins出现Maven Surefire插件执行错误

解决SpringBoot 3.2.1升级后Jenkins中Maven Surefire插件报错问题

针对你遇到的本地正常但Jenkins执行maven-failsafe-plugin:3.1.2:verify失败的问题,以下是几个常见的排查和解决方向:

1. 检查Jenkins环境的JDK版本

SpringBoot 3.x系列要求JDK 17及以上,本地环境可能已经满足,但Jenkins的构建节点可能仍在使用低版本JDK(比如JDK 8/11)。

  • 进入Jenkins的「全局工具配置」,确认Maven关联的JDK版本为17+
  • 在Jenkins构建任务的「配置」中,指定构建使用的JDK为符合要求的版本

2. 升级Maven Surefire/Failsafe插件版本

SpringBoot 3.2.1默认依赖的Surefire插件版本可能高于3.1.2,版本不兼容会导致验证阶段失败。建议在pom.xml中显式指定更高版本的插件:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-failsafe-plugin</artifactId>
            <version>3.2.5</version> <!-- 或最新稳定版 -->
        </plugin>
    </plugins>
</build>

3. 清理Jenkins工作空间缓存

Jenkins的工作空间可能残留了旧版本的依赖、测试类或构建产物,导致冲突:

  • 在Jenkins构建任务的「配置」中,勾选「删除工作空间 before build starts」选项
  • 或者手动进入Jenkins节点的工作空间目录,删除对应项目的文件夹后重新构建

4. 检查测试类的JVM参数差异

本地和Jenkins的JVM参数可能存在差异,比如内存不足导致测试执行失败:

  • 在pom.xml中为Failsafe插件添加统一的JVM参数配置:
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-failsafe-plugin</artifactId>
    <version>3.2.5</version>
    <configuration>
        <argLine>-Xmx1024m -XX:MaxMetaspaceSize=512m</argLine>
    </configuration>
</plugin>
  • 确保Jenkins构建时没有覆盖这些参数

5. 排查并行测试的冲突

如果启用了测试并行执行,Jenkins环境的资源限制可能导致冲突:

  • 暂时关闭并行测试,修改Failsafe插件配置:
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-failsafe-plugin</artifactId>
    <version>3.2.5</version>
    <configuration>
        <parallel>none</parallel>
    </configuration>
</plugin>
  • 若关闭后正常,再逐步调整并行参数(如线程数)适配Jenkins环境

内容的提问来源于stack exchange,提问作者SeleniumLearner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 23:16:04