Maven无法获取私服Jar包的问题

本文介绍了解决私服无法获取最新jar包的方法。包括在pom文件中修改更新策略,指定每次编译都获取最新包;修改mvn编译命令,添加 -U 参数更新快照包;递增版本号;将jar的父项目deploy到nexus私服等,以确保工程编译时能获取最新依赖包。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文地址:https://blog.youkuaiyun.com/my_momo_csdn/article/details/82595805

一、私服无法获取最新jar包?

更新了某个工具包到私服之后,编译时却还是获取不到最新的jar包?怎么办?即使是代SNAPSHOT后后缀的快照包,也不能保证每次编译获取到最新的,有下面几个办法来解决这个问题。

总结:我遇到的问题可能跟原博主不同,是发布了新的版本号但依然是报错missing artifact;所以方法3无效,也采用了方法4依然不能,最后通过方法1解决了问题,记录一下。

1.1 pom配置

在pom文件中有一个更新策略,为了保证每一次获取到最新的jar包,我们可以修改这个策略。找到pom的repositories配置节点,配置Snapshots节点,注意要找到if_snapshots这个url,修改snapshot的enabled为true,并设置updatePolicy为alaways:
<id>Snapshots</id>
  <url>http://192.168.xx.xx:xxxx/nexus/content/repositories/if_snapshots/</url>
  <snapshots>
  <enabled>true</enabled>
  <updatePolicy>always</updatePolicy>
  </snapshots>
  </repository>
这个url就是我们配置的快照仓库地址,我们指定了updatePolicy是alaways,每次编译都保证可以获取到最新的包。
1.2 修改mvn编译命令

修改打包命令,添加-U参数,如:mvn clean install package -U -DskipTests=true,-U参数的含义是update-snapshots,保证可以更新快照包。
建议添加上述两点,这样工程在每次编译的时候,都会获取到最新的快照依赖包。否则即使更新了jar包到maven私服,持续集成那边构建的时候,也不能立即获取到最新的包。有时候我们想立刻更新一个私服上的jar包,编译时却获取不到最新的,浪费很多时间。
1.3 修改版本号

如果jar包更新支持了某个新的功能,我们也可以递增版本号,避免这样的问题;
1.4 parent未deploy

可能是jar中的<parent>模块未被deploy,将jar的父项目deploy到nexus私服能解决问题;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值