Spring Cloud 2020 版本重大变革,更好的命名方式!

简介: Spring Cloud 版本重大变革,变更了版本号的命名方式。旧版命名方式看这篇:Spring Cloud 多版本怎么选择?从 Spring Cloud 2020.0.0-M1 开始,Spring Cloud 废除了这种英国伦敦地铁站的命名方式,而使用了全新的 "日历化" 版本命名方式。

Spring Cloud 版本重大变革,变更了版本号的命名方式。


旧版命名方式看这篇:


Spring Cloud 多版本怎么选择?


从 Spring Cloud 2020.0.0-M1 开始,Spring Cloud 废除了这种英国伦敦地铁站的命名方式,而使用了全新的 "日历化" 版本命名方式。


image.png


官宣如下:


https://spring.io/blog/2020/04/17/spring-cloud-2020-0-0-m1-released


什么是日历化版本?


英文名称:Calendar Versioning


日历化版本不是基于任意的数字,而是基于项目的发布日期的版本控制约定,随着时间的推移,版本会越来越好。


这种基于日期的版本命名方式被称为 “日历化版本”(Calendar Versioning), 或者可以简称 CalVer。


详细的介绍参考:


https://calver.org/


我们来看下 Spring Cloud 是如何开始使用日历化版本的。


Spring Cloud 使用了 YYYY.MINOR.MICRO 的命名规则:


YYYY:表示 4 位年份;

MINOR:代表一个递增的数字,每年以 0 开始递增;

MICRO:代表版本号后缀,就和之前使用的 .0 类似于 .RELEASE 一样,.2 类似于 .SR2。

预发布版本的后缀分隔符也从 . 变更为 -,如:2020.0.0-M1 和 2020.0.0-RC2 命名所示。


同时,Spring Cloud 将停止给快照版本添加 BUILD- 前缀,如:2020.0.0-SNAPSHOT 命名所示。


但是,英国伦敦地铁站的命名没有彻底废除,Spring Cloud 将继续使用它作为版本代号,当前代号:Ilford,只是发布到 Maven 仓库的版本将不再使用这些名称。


最后就再来欣赏下 Maven 下的 Spring Cloud 新老版本号命名方式:


老版本命名:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-dependencies</artifactId>
    <version>Hoxton.SR6</version>
    <type>pom</type>
    <scope>runtime</scope>
</dependency>

新版本命名:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-dependencies</artifactId>
    <version>2020.0.0-M2</version>
    <type>pom</type>
    <scope>runtime</scope>
</dependency>

使用日历化版本命名方式,我个人觉得会更方便,可以更清楚的看出当前版本的年份,看到字母、纯数字方式的版本号都不知道自己多久没升级了。

相关文章
|
3月前
|
XML Java Nacos
Spring Boot 整合Nacos 版本兼容适配 史上最详细文档
本文介绍SpringBoot整合Nacos的完整流程,涵盖Nacos下载安装、配置中心与服务发现集成、版本兼容性问题及实战配置。重点解决SpringBoot 3.3.0与Nacos版本适配难题,推荐使用Spring Cloud Alibaba方案,并提供项目开源地址供参考学习。
|
3月前
|
应用服务中间件 Nacos nginx
黑马头条_SpringCloud项目阶段一:环境搭建(Mac版本)
本文为 Mac 用户介绍微服务项目环境搭建,含阿里云服务器用 Docker 装 Nacos 1.2.0,本地通过 brew 装 OpenJDK 8、Maven 3.6.1、Redis,Docker 部署 MySQL 5.7 并配字符集,及 Nginx 安装与反向代理设置,附命令与配置步骤。
264 4
黑马头条_SpringCloud项目阶段一:环境搭建(Mac版本)
|
4月前
|
Cloud Native Java API
Java Spring框架技术栈选和最新版本及发展史详解(截至2025年8月)-优雅草卓伊凡
Java Spring框架技术栈选和最新版本及发展史详解(截至2025年8月)-优雅草卓伊凡
906 0
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
Spring Cloud Alibaba 发布了 Scheduling 任务调度模块 [#3732]提供了一套开源、轻量级、高可用的定时任务解决方案,帮助您快速开发微服务体系下的分布式定时任务。
16039 115
|
消息中间件 监控 Java
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
316 6
|
Java 关系型数据库 MySQL
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
216 5
|
缓存 监控 Java
如何将Spring Boot应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot应用程序部署到Pivotal Cloud Foundry (PCF)
257 5
|
Java 关系型数据库 开发工具
idea创建不了spring2.X版本,无法使用JDK8,最低支持JDK17 , 如何用idea创建spring2.X版本,使用JDK8解决方案
本文提供了解决方案,如何在IDEA中创建Spring 2.X版本的项目并使用JDK8,尽管Spring 2.X已停止维护且IDEA不再直接支持,通过修改pom.xml或使用阿里云的国内源来创建项目。
1648 0
idea创建不了spring2.X版本,无法使用JDK8,最低支持JDK17 , 如何用idea创建spring2.X版本,使用JDK8解决方案
|
前端开发 Java Spring
【非降版本解决】高版本Spring boot Swagger 报错解决方案
【非降版本解决】高版本Spring boot Swagger 报错解决方案
1026 3