发布release

用户A将代码打包到RELEASE仓库。用户B使用时,需要在pom.xml添加jar包的依赖坐标。如果用户A将jar包版本从1.0升级到2.0,用户B使用时也需要在pom.xml中修改坐标版本。但是RELEASE表示是稳定版本,是经过测试以后才会发布的,通常不会频繁地升级版本。

快照SNAPSHOT

SNAPSHOT是不稳定版本,可能是还在开发中的版本,在开发时用户A可能每天都会更新代码,可能会频繁地发布版本。而另一组用户B需要实时得到A的最新代码版本,以进行同步开发。如果使用RELEASE仓库需要不停地更换坐标,才能升级到最新版本。而在SNAPSHOT仓库则不需要这么做,用户A和用户B都不用升级版本。

用户A每次发布时会根据当时的时间创建一个新的快照版本,之前的吧、快照版本也会保留成为历史版本。用户B每次构建项目时会自动根据版本时间加载最新的依赖jar包。所以这种模式更加适合于多模块同步开发测试阶段。

 

RELEASE仓库的用法

RELEASE仓库的用法在上一篇hosted宿主仓库的介绍中有提到:https://www.cnblogs.com/NYfor2018/p/9079629.html

 

SNAPSHOT仓库用法

 

① 与RELEASE仓库类似,在pom.xml中设置快照仓库:

<distributionManagement> 

    <snapshotRepository> 

        <id>snapshot</id> 

        <name>snapshot</name> 

        <url>http://localhost:8081/repository/maven-snapshots/</url> 

    </snapshotRepository> 

</distributionManagement> 

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

<version>1.0-SNAPSHOT</version>  

③ 在settings.xml中设置用户名密码,id要和上面的对应(与RELEASE仓库的设置类似)。

<servers> 

    <server> 

        <id>snapshot</id> 

        <username>admin</username> 

        <password>admin123</password> 

    </server> 

</servers> 

(需要注意,不要偷懒哦,这里server的id是snapshot,不是release,所以还是需要在settings.xml中设置)

④ 运行nexus私服(参考前两篇:https://www.cnblogs.com/NYfor2018/p/9079068.html、https://www.cnblogs.com/NYfor2018/p/9079629.html )。

⑤ 在eclipse中右击maven项目--Run as--maven build...,然后在goals输入deploy,再点击Run。

然后打开nexus页面,可在Browse—maven snapshots里面看到,MavenTest项目已经被打包成snapshot版本格式了。

 


参考文章:https://blog.csdn.net/wangb_java/article/details/66000956

(十三)maven之release和snapshots的更多相关文章

  1. Maven发布Release到中心仓库历程记录(无个人域名)

    Maven发布Release到中心仓库历程记录(无个人域名) 前言 因为前段时间自己做了一个爬虫项目(地址),自己很希望分享到maven中心仓库上,感觉拥有自己的jar包令我兴奋,便开始了maven发 ...

  2. nexus建立maven仓库私服及Snapshots、release的版本管理

    环境搭建   1.linux安装maven   wget http://mirrors.cnnic.cn/apache/maven/maven-3/3.0.5/binaries/apache-mave ...

  3. (十三)Maven插件解析运行机制

    这里给大家详细说一下Maven的运行机制,让大家不仅知其然,更知其所以然. 1.插件保存在哪里? 与我们所依赖的构件一样,插件也是基于坐标保存在我们的Maven仓库当中的.在用到插件的时候会先从本地仓 ...

  4. Java开发学习(三十三)----Maven私服(一)私服简介安装与私服分类

    一.私服简介 团队开发现状分析 (1)张三负责ssm_crm的开发,自己写了一个ssm_pojo模块,要想使用直接将ssm_pojo安装到本地仓库即可 (2)李四负责ssm_order的开发,需要用到 ...

  5. Maven学习(十三)-----Maven 构建生命周期

    Maven 构建生命周期 构建生命周期是什么? 构建生命周期阶段的目标是执行顺序是一个良好定义的序列. 这里使用一个例子,一个典型的 Maven 构建生命周期是由下列顺序的阶段: 阶段 处理 描述 准 ...

  6. maven pom.xml 说明

    本文复制于:http://blog.csdn.net/zhuxinhua/article/details/5788546 一.pom.xml示例 <project> <modelVe ...

  7. Gradle 1.12用户指南翻译——第五十二章. Maven 插件

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上 ...

  8. maven常用插件集

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...

  9. maven权威指南学习笔记(五)—— POM

    1. 简介 Archetype插件通过 pom.xml 文件创建了一个项目.这就是项目对象模型 (POM),一个项目的声明性描述. 当Maven运行一个目标的时候,每个目标都会访问定 义在项目POM里 ...

随机推荐

  1. linux中用管道实现兄弟进程通信

    1 使用fork函数创建两个子进程.在第一个子进程中发送消息到第二个子进程,第二个子进程都出来并处理. 2 在父进程中,不适用管道通信,所以什么不需要做直接关闭勒管道的两端 3 代码实现 #inclu ...

  2. TypeScript完全解读(26课时)_6.TypeScript完全解读-泛型

    6.TypeScript完全解读-泛型 创建实例ts文件generics.ts 在index.ts内引入 fill是填充数组,创建的数组的元素数是times,填充的值就是接收的value的值 这里传入 ...

  3. C/C++内存检测工具Valgrind

    内存检测Valgrind简介 Valgrind是运行在Linux上一套基于仿真技术的程序调试和分析工具,作者是获得过Google-O'Reilly开源大奖的Julian Seward, 它包含一个内核 ...

  4. ZOJ3321,ZOJ3317

    ZOJ3321 //there is at most one edge between two nodes. 因为这句话的局限性,又要满足环,那么一定是每个点度为2,然后为n节点的一个环 //#inc ...

  5. MySQL · 性能优化 · MySQL常见SQL错误用法

    1. LIMIT 语句 分页查询是最常用的场景之一,但也通常也是最容易出问题的地方.比如对于下面简单的语句,一般DBA想到的办法是在type, name, create_time字段上加组合索引.这样 ...

  6. 在指定的ChartArea中显示Series

    WinForm的Chart有Series, ChartArea,输出图表就往Serie里扔数据就可以了,很方便是吧.我原想Area和serie有上下级关系,可是我错了,Area和Serie并没有上下级 ...

  7. hard(2018.10.18)

    题意:给你一棵\(n\)个节点的树,\(q\)个询问,每次询问读入\(u,v,k,op\),需要满足树上有\(k\)对点的简单路径交都等于\(u,v\)之间的简单路径,\(op=1\)表示\(k\)对 ...

  8. max函数的用法

    题目是   给你一段全英文本,求这段文本中出现次数最多的字母 import string def checkio(text): text = text.lower() return max(strin ...

  9. PAT甲级——1118 Birds in Forest (并查集)

    此文章 同步发布在CSDN:https://blog.csdn.net/weixin_44385565/article/details/89819984   1118 Birds in Forest  ...

  10. SpringBoot | 集成Java Mail

    Spring Boot 对Java mail 集成提供了自动配置的支持,只需要配置依赖以及在application.properties 里配置邮件信息即可. 添加依赖: <dependency ...