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

Jenkins构建Spring Boot项目报错:无法解析父POM

解决Spring Boot Jenkins构建父POM解析失败问题

核心问题分析

构建失败的两个关键原因:

  • Linux环境下Jenkins使用的JVM/Maven未信任Maven中央仓库的SSL证书,导致无法通过HTTPS下载父POM
  • 项目POM中未配置parent.relativePath,Maven无法从本地仓库定位父POM文件

解决方案1:修复SSL证书信任问题

方法A:手动导入中央仓库证书到Jenkins的JVM信任库

  1. 在Jenkins服务器上执行以下命令下载中央仓库证书:
    openssl s_client -connect repo.maven.apache.org:443 < /dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > maven-central.crt
    
  2. 找到Jenkins运行所使用的JDK的cacerts文件路径,通常路径类似:
    /var/lib/jenkins/jdk/{jdk版本}/jre/lib/security/cacerts
    
  3. 执行证书导入命令(默认密钥库密码为changeit):
    keytool -import -alias maven-central -keystore /path/to/your/cacerts -file maven-central.crt
    
  4. 重启Jenkins服务,让证书生效。

方法B:临时关闭SSL校验(仅测试环境使用,不推荐生产)

修改Jenkins使用的Maven settings.xml文件,添加一个禁用HTTPS的仓库配置:

<profiles>
    <profile>
        <id>insecure-maven-central</id>
        <activeByDefault>true</activeByDefault>
        <repositories>
            <repository>
                <id>central</id>
                <url>http://repo.maven.apache.org/maven2</url>
                <releases><enabled>true</enabled></releases>
                <snapshots><enabled>true</enabled></snapshots>
            </repository>
        </repositories>
        <pluginRepositories>
            <pluginRepository>
                <id>central</id>
                <url>http://repo.maven.apache.org/maven2</url>
                <releases><enabled>true</enabled></releases>
                <snapshots><enabled>true</enabled></snapshots>
            </pluginRepository>
        </pluginRepositories>
    </profile>
</profiles>

解决方案2:配置parent.relativePath定位本地父POM

修改项目的pom.xml,在parent节点中添加relativePath,指定父POM在本地Maven仓库的路径:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>3.1.3</version>
    <!-- 指向本地Maven仓库中的父POM文件 -->
    <relativePath>${user.home}/.m2/repository/org/springframework/boot/spring-boot-starter-parent/3.1.3/spring-boot-starter-parent-3.1.3.pom</relativePath>
</parent>

或者,先在Jenkins服务器上手动下载父POM到本地仓库,再执行构建:

mvn org.apache.maven.plugins:maven-dependency-plugin:get -Dartifact=org.springframework.boot:spring-boot-starter-parent:3.1.3:pom

解决方案3:检查Jenkins的Maven配置

  • 进入Jenkins「全局工具配置」,确认Maven的安装路径和使用的settings.xml文件正确
  • 在构建任务的Maven命令中,显式指定正确的settings.xml路径(如果需要):
    mvn -s /path/to/custom/settings.xml -f myFirstProject/pom.xml clean install
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 01:57:25