首页 > 其他分享 >【Maven】Jenkins打包失败,Maven无法获取依赖问题排查1

【Maven】Jenkins打包失败,Maven无法获取依赖问题排查1

时间:2022-10-09 00:22:42浏览次数:57  
标签:maven 依赖 仓库 snapshots Maven 排查 Jenkins public

背景

  总结下工作中maven依赖引用失败的排查的过程

排查过程

  从gitee上拉取了某个项目,使用Jenkins打包时出现,无法解析到某个依赖,如下图

 

 

   1.首先排查Nexus私服上是否有这个包    
    查询Nexus,可以看到Nexus上是有这个包的,且这个包位于aliyun仓库内,如下图

 

 

 

 

 

   2.其次,排查aliyun仓库是否有被jenkins引用到
    需要查看jenkins引用的maven的settings.xml文件,这里可以通过jenkins控制台输出看到相关信息

 

 

     找到服务器上的maven的settings.xml文件,部分信息如下

    <profile>
        <id>public-snapshots</id>
        <repositories>
            <repository>
                <id>public-snapshots</id>
                <url>http://xxxx:9091/repository/maven-snapshots/</url>
                <releases>
                    <enabled>false</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
                        <repository>
                <id>public-snapshots</id>
                <url>http://xxxx:9091/repository/maven-public/</url>
                <releases>
                    <enabled>false</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories>
        <pluginRepositories>
            <pluginRepository>
                <id>public-snapshots</id>
                <url>http://xxxx:9091/repository/maven-public/</url>
                <releases>
                    <enabled>false</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </pluginRepository>
        </pluginRepositories>
    </profile>
  </profiles>

  <activeProfiles> 
    <activeProfile>public-snapshots</activeProfile> 
  </activeProfiles>
</settings>

    可以看到settings.xml文件激活使用的仓库为maven-public,这里i需要查询这个是仓库还是仓库组,如果是仓库组,是否包含上文的aliyun仓库
    maven-public信息如下,可以看到maven-public是一个仓库组,包含了4种仓库,因此maven-public是可以引用到aliyun仓库内的依赖的,还需要进一步排查

 

 

   3.通过排查仓库组和仓库内依赖地址发现并没有什么问题,这里需要进一步分析为什么没有引用到这个依赖
    排查后发现maven-public仓库组配置的<release>标签内没有开启对发行版本的支持,导致新项目打包时,非快照版本的包不会从仓库下载
    修改配置后,开启maven-public仓库对发行版本依赖的支持,重新打包正常运行

<releases>
           <enabled>true</enabled>
</releases>

 

标签:maven,依赖,仓库,snapshots,Maven,排查,Jenkins,public
From: https://www.cnblogs.com/july-sunny/p/16770745.html

相关文章

  • maven打包提示子模块的程序包不存在问题解决
    有些utils和common的模块,已经有依赖,并能正常在Idea上跑了,但打包时提示程序包xxx不存在时,在pom上加上以下代码即可:<build><plugins><plugin><......
  • idea创建Maven项目
    目录配置一下idea的Maven新建Maven项目配置一下idea的Maven首先先配置一下idea的Maven:打开idea的设置,找到构建、执行、部署-->构建工具-->Maven然后配置自己的Mave......
  • devops学习笔记-jenkins pipeline流水线发布
    jenkinspipeline介绍要实现CD,先要实现CI。CDPipeline就是一个代码文件,里面把你项目业务场景都通过Groovy代码和Pipeline语法实现,一个一个业务串联起来,全部实现自动化,从代......
  • linux 前端 jenkins打包失败 permission 权限安装 root 安装nodejs,没有权限,另一个账号
    linux前端jenkins打包失败permission权限安装root安装nodejs,没有权限,另一个账号,需要chkmod将文件权限打开开始以为nodejs版本问题最后发现是安装nodejs是一个账......
  • Jenkins 20221007笔记本6
                ......
  • Centos 7.9 安装 maven-3.8.6
    一、Centos7.9安装maven-3.8.6地址https://maven.apache.org/index.htmlhttps://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz......
  • CentOS 7.9 安装 Jenkins 2.361.2
    一、CentOS7.9安装Jenkins2.361.21 下载地址:https://www.jenkins.io/download2 简介Jenkins是一个Java开发的开源持续集成工具,广泛用于项目开发,具有自动化构建......
  • CentOS 7.9 安装 Jenkins 2.361.2
    一、CentOS7.9安装Jenkins2.361.21下载地址:https://www.jenkins.io/download2简介Jenkins是一个Java开发的开源持续集成工具,广泛用于项目开发,具有自动化构建、......
  • jenkins linux服务器使用ssh实现免密登陆
    需求Jenkins部署的时候需要登陆到部署机执行shell脚本,然后采用ssh免密登陆。具体步骤(1)、客户端首先向服务器发送要对其进行身份验证的密钥对的用户名。(2)、服务器检查客......
  • jenkins linux服务器使用ssh实现免密登陆
    需求Jenkins部署的时候需要登陆到部署机执行shell脚本,然后采用ssh免密登陆。具体步骤(1)、客户端首先向服务器发送要对其进行身份验证的密钥对的用户名。(2)、服务器检查客......