首先看下snapshot类型maven
创建一个maven-privider项目,版本定义为1.1-SNAPSHOTide
建立一个privider类,写一个hello()方法,并推送maven私有仓库测试
而后再创建一个deploy-practice项目,并引用maven-privider项目spa
而后用main方法测试,以下图所示:打印出hello3d
下面修改下hello方法,推送maven仓库blog
而后咱们,不作任何修改,直接运行测试的main方法,结果以下,直接打印出最新修改内容引用
-----------------------------------------------------------------------------------------------方法
下面看下release类型仓库,将maven-provider项目类型改成release类型im
hello()方法输出内容修改成hello I am release,并推送maven 私服d3
将maven-practice引入maven-privider类型改成release类型
测试main方法,结果以下,和预期的同样,没有问题
修改hello方法内容,如图所示
再次运行main方法,结果以下,结果并无改变和修改以前是同样的
解决办法有两个,一是删除远程仓库中的jar包,从新推送,而后再删除本地的maven仓库,二是,从新推送的时候,升级版本号(引入的地方版本号一样也须要修改),我们使用第一种方法,从新测试main方法,结果以下
总结:
snapshot类型仓库:每次构建项目时从远程仓库中检出一份新的快照版本
release类型仓库:重复推送,并不会覆盖远程仓库的jar包,必须删除以前的版本,或者升级版本号进行再次推送到私服