pom.xml 配置之:snapshot 快照库和 release发布库 的区别

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

1、如果在发布时使用 mvn deploy -P release 的命令,那么会自动使用0.1作为发布版本,那么根据 maven 处理 snapshot 和release 的规则,由于版本号后不带 -SNAPSHOT 故当成是正式发布版本,会被发布到 release 仓库;

2、如果发布时使用 mvn deploy 命令,那么就会使用默认的版本号 0.1-SNAPSHOT,此时 maven 会认为是快照版本,会自动发布到快照版本库。

      在 distributionManagement 段中配置的是 snapshot 快照库和 release 发布库的地址,我这里是采用 nexus 作为镜像服务器。

以上转自:https://blog.csdn.net/aitangyong/article/details/53332091

以下转自:https://www.cnblogs.com/rwxwsblog/p/6029636.html 

maven中snapshot快照库和release发布库的区别

可参考 maven中snapshot快照库和release发布库的区别和作用

1. 开发阶段经常性的会随时需要修改并发布,可能一天要发布N次。

maven 的依赖管理是基于版本管理的,对于发布状态的 artifact,如果版本号相同,即使内部的镜像服务器上的组件比本地新,maven也不会主动下载。若开发阶段都是基于正式发布版本来做依赖管理,那此时,就需要升级组件的版本号,可这操作明显过于繁复了。

2. 若基于快照版本,问题就迎刃而解了,maven已准备好了这一切:

maven 中的仓库分为两种:snapshot 快照仓库和 release 发布仓库。

snapshot 快照仓库用于保存开发过程中的不稳定版本,release正式仓库则是用来保存稳定的发行版本。

定义一个组件/模块为快照版本,只需要在 pom 文件中在该模块的版本号后加上 -SNAPSHOT 即可(注意这里必须是大写)。

3. maven 会根据模块的版本号 (pom文件中的version) 中是否带有 -SNAPSHOT 来判断是快照版本还是正式版本。

若是快照版本,在 mvn deploy 时会自动发布到快照版本库中。使用快照版本的模块,在不更改版本号的情况下,直接编译打包时,maven 会自动从镜像服务器上下载最新的快照版本。

若是正式发布版本,在 mvn deploy 时会自动发布到正式版本库中,而此类模块,在不更改版本号的情况下,编译打包时如果本地已经存在该版本的模块则不会主动去镜像服务器上下载 。

故 开发阶段,可将公用库的版本设置为快照版本,被依赖组件则引用快照版本进行开发,在公用库的快照版本更新后,也无需修改 pom 文件(修改版本号来下载新的版本),直接 mvn 执行相关编译、打包命令即可重新下载最新的快照库了。

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值