Maven学习总结(53)——利用Maven插件构建镜像进行持续交付中的版本号管理
一、问题产生
我们来思考下持续交付的原则。每次构建的结果可能是一个潜在的发行版本;消除手动瓶颈;尽可能自动化。这三点正是我们想要实现的,但是在实现之前,我们先来看下在典型的Maven发布流程和经典方式版本号管理上的具体问题。
1)没有自动化
通常来说,一次提交会触发一个快照构建,然后生成一个快照构件(“8.1.2-SNAPSHOP”)。当开发者感觉软件到达稳定状态后,他会触发一次专用发布构建。因此,他预先分配版本号(“8.2.0”)。人员必须分配版本号然后触发发布构建。这种方式有什么缺点:(1)我们需要手动触发专用的发布工作流程;(2)版本号需要人为手动分配;(3)看版本号“8.2.0”并不清晰,比如这个版本号的构件中包含了哪些提交(代码)。我们需要一个Git标签。
2)任意快照
此外,快照引起了许多问题。不清晰的内容变动。(1)不可追踪。我们不能说,有哪些提交包含在了当前的快照构件中;(3)不可靠。快照构件可以很快速的修改。这样很容易引起问题。(3)易出错。不过不注意,很容易覆盖一个快照(比如:当创建Git分支的时候,忘记修改POM文件中的版本号。从Git分支上构建会覆盖之前的快照)。</
Maven学习总结(53)——利用Maven插件构建镜像进行持续交付中的版本号管理相关推荐
- Maven学习总结(八)——使用Maven构建多模块项目
2019独角兽企业重金招聘Python工程师标准>>> Maven学习总结(八)--使用Maven构建多模块项目 在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分 ...
- Maven学习(三)————Maven核心概念(二)
引言 承接上一篇<Maven学习(二)----Maven核心概念(一)>,介绍 Maven 生命周期.插件.目标.继承.聚合等一些概念. 一.Maven 生命周期 1.1 理解 Mave ...
- Maven学习(二)————Maven核心概念(一)
引言 Maven 作为项目构建工具,学习成本并不大,但是如果搞不懂它的一些核心概念,使用起来还是不能特别得心应手. Maven的核心概念包括以下这些: 1.约定的目录结构 2.POM 3.坐标 ...
- Maven学习总结(十)——使用Maven编译项目gbk的不可映射问题
2019独角兽企业重金招聘Python工程师标准>>> Maven学习总结(十)--使用Maven编译项目gbk的不可映射问题 一.问题描述 今天在MyEclipse中使用Maven ...
- Maven 学习 (0) Maven 简介
2019独角兽企业重金招聘Python工程师标准>>> Maven 学习 (0) Maven 简介 什么是 Maven? Apache Maven 是一个软件项目的管理和理解工具.M ...
- IDEA中使用Docker插件构建镜像并推送至私服Harbor
IDEA中使用Docker插件构建镜像并推送至私服Harbor 一.开启Docker服务器的远程访问 1.1 开启2375远程访问 1.2 添加harbor镜像配置 1.3 重启docker服务 二. ...
- 从零到一,构建你的持续交付流程(一):一个持续交付流程的构思
在编码过程中,一个很容易发现的现象就是: 经常依赖手工操作的过程,一定容易出错,而且是反复出错 这就是持续交付出现的原因. 持续交付的目标就是从代码编译到可部署的二进包,甚至是部署这个很多都是依赖手工 ...
- maven学习笔记之IDEA+Maven+Jetty运行一个简单的web项目
maven学习笔记 一.什么是maven Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Life ...
- Maven学习笔记-什么是maven?
1.什么是maven? Maven 翻译为"专家"."内行",是 Apache 下的一个纯 Java 开发的开源项目.基于项目对象模型(缩写:POM)概念,Ma ...
最新文章
- C# 多态(接口、虚方法、抽象类)的理解
- 探索客户端JavaScript
- 搜索进一步细化 谷歌或重回大陆
- CentOS7上安装KVM部署虚拟机
- Leetcode 141.环形链表
- VC++ 访问数据库实例详解图解
- python数组切片效率_python – 对numpy数组切片进行采样的最快方法是什么?
- 权限操作-表结构分析与创建表
- 此表单只能填写一次_暴雪战网国服账号修改邮箱只能填写表单申请
- linux mint cinnamon_2019年最佳的8个Linux发行版
- 用友报表java打不开怎么加载,点报表没反应怎么回事啊?演示账套也打不开。...
- 程序员工资为什么普遍很高,原来是因为这个...
- 如何确定autosar的版本_什么是AUTOSAR?AUTOSAR的概要、背景以及目的-汽车电子-与非网...
- SQL2017安装教程
- 我们是选择开源CRM,还是选择商业CRM?
- TestFlight Beta 相关问答
- 读《春秋》有感之十二:偪阳之战
- Win PE 启动盘制作
- BI神器Power Query(14)-- PQ制作时间维度表(3)
- mysql触发器作用,好处和curl
热门文章
- 两表关联更新 mysql_MySQL多表更新(关联表更新)
- mysql的repeat_mysql函数中使用repeat循环的例子
- mac搭建svn服务器文件被锁定,MAC搭建SVN服务器并配置Cornerstone
- ps3存档是php文件,PS3存档修改图文详细全教程
- Quartus ii 13.1错误合集,持续更新
- spark sql 数据类型转换_spark dataframe 类型转换
- kext updater使用方法_语言清晰度测量方法的前世今生
- 解封装(二):初始化解封装avformat_open_input,各参数分析,以及简单流程
- python自助电影售票机_Spring Cloud版——电影售票系统六使用 Spring Cloud Config 统一管理微服务配置...
- python 分类变量xgboost_XGBoost 原理 及 常见面试题