Maven探究二:快照与发布,RELEASE与SNAPSHOT



发布RELEASE

用户A将代码打包发布到RELEASE仓库,具体操作参考上篇文章。用户B使用时,需要在pom.xml添加JAR包的依赖坐标。如果用户A将版本从1.0升级为2.0,用户B使用时也需要同时在pom.xml中修改坐标版本。但是RELEASE是稳定版本,是经过测试以后才会发布的,通常不会频繁的升级版本


快照SNAPSHOT

SNAPSHOT是不稳定版,可能是还在开发中的版本,在开发时用户A可能每天都会更新代码,可能会频繁的发布版本。而另一组用户B需要实时得到A的最新代码版本,以进行同步开发。如果使用RELEASE仓库需要不停的更换坐标,才能升级到最新版本。而SNAPSHOT仓库则不需要这样做,用户A和用户B都不用升级版本。用户A每次发布时会根据当时时间创建一个新的快照版本,之前的快照版本也会保留成为历史版本。用户B每次构建项目时会自动根据版本时间加载最新的JAR包,这种模式更加适合于多模块同步开发测试阶段


SNAPSHOT仓库用法

和RELEASE仓库类似,在pom.xml中设置快照仓库如下

[plain]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <distributionManagement>  
  2.     <snapshotRepository>  
  3.         <id>snapshot</id>  
  4.         <name>snapshot</name>  
  5.         <url>http://localhost:8081/repository/maven-snapshots/</url>  
  6.     </snapshotRepository>  
  7. </distributionManagement>  

同时设置version中的版本后面必须有 -SNAPSHOT,此后缀代表这是一个快照版

[plain]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <version>1.0-SNAPSHOT</version>   

在setting.xml中设置用户名密码,id要和上面对应。和RELEASE一样

[plain]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <servers>  
  2.     <server>  
  3.         <id>snapshot</id>  
  4.         <username>admin</username>  
  5.         <password>admin123</password>  
  6.     </server>  
  7. </servers>  

运行nexus私服(参考前两篇),在eclipse中右击maven项目--运行方式--maven build...  在goals中输入deploy,运行。

在nexus界面中点击最上排的方块图标--browse--components菜单--maven-snapshots仓库。如下,我没有改坐标,连续发布了几次,可以发现name列和group列是完全一样的,version列根据发布时间不同自动在1.0后面加上了当前时间,以此区别不同版本



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值