返回介绍

版本说明

发布于 2024-08-18 11:12:34 字数 3006 浏览 0 评论 0 收藏 0

当我们通过搜索引擎查找一些Spring Cloud的文章或示例时,往往可以在依赖中看到很多不同的版本名字,比如Angel.SR6、Brixton.SR5等,为什么Spring Cloud没有像其他Spring的项目使用类似1.x.x的版本命名规则呢?这些版本之间又有什么区别呢?在学习之初,非常有必要弄清楚这些版本的意义和内容,这样才能在我们使用Spring Cloud时,指导我们选择更为合适的版本进行架构与开发。

版本名与版本号

由于Spring Cloud不像Spring社区其他一些项目那样相对独立,它是一个拥有诸多子项目的大型综合项目,可以说是对微服务架构解决方案的综合套件组合,其包含的各个子项目也都独立进行着内容更新与迭代,各自都维护着自己的发布版本号。因此每一个Spring Cloud 的版本都会包含多个不同版本的子项目,为了管理每个版本的子项目清单,避免Spring Cloud的版本号与其子项目的版本号相混淆,没有采用版本号的方式,而是通过命名的方式。

这些版本的名字采用了伦敦地铁站的名字,根据字母表的顺序来对应版本时间顺序,比如最早的Release版本为Angel,第二个Release版本为Brixton……

经过上面的解释,不难猜出,之前所提到的 Angel.SR6、Brixton.SR5中的 SR6、SR5就是版本号了。

当一个版本的Spring Cloud项目的发布内容积累到临界点或者一个严重bug解决可用后,就会发布一个“service releases”版本,简称SRX版本,其中X是一个递增的数字,所以Brixton.SR5就是Brixton的第5个Release版本。

版本区别

下面列出的是开始编写此书时各版本的版本构成表,我们可以快速查阅当前各版本所包含的子项目,以及各子项目的版本号,以此来决定需要选择哪个版本。

Component      Angel.SR6   Brixton.SR5  Camden.M1  Camden.BUILD-SNAPSHOT

spring-cloud-aws    1.0.4.RELEASE 1.1.1.RELEASE 1.1.1.RELEASE 1.1.2.BUILD-SNAPSHOT

spring-cloud-bus     1.0.3.RELEASE 1.1.1.RELEASE 1.2.0.M1    1.2.0.BUILD-SNAPSHOT

spring-cloud-cli     1.0.6.RELEASE 1.1.5.RELEASE 1.2.0.M1    1.2.0.BUILD-SNAPSHOT

spring-cloud-commons  1.0.5.RELEASE 1.1.1.RELEASE 1.1.1.RELEASE 1.1.2.BUILD-SNAPSHOT

spring-cloud-contract                1.0.0.M2    1.0.0.BUILD-SNAPSHOT

spring-cloud-config    1.0.4.RELEASE 1.1.3.RELEASE 1.2.0.M1    1.2.0.BUILD-SNAPSHOT

spring-cloud-netflix    1.0.7.RELEASE 1.1.5.RELEASE 1.2.0.M1    1.2.0.BUILD-SNAPSHOT

spring-cloud-security   1.0.3.RELEASE 1.1.2.RELEASE 1.1.2.RELEASE 1.1.3.BUILD-SNAPSHOT

spring-cloud-starters   1.0.6.RELEASE

spring-cloud-cloudfoundry        1.0.0.RELEASE 1.0.0.RELEASE 1.0.1.BUILD-SNAPSHOT

spring-cloud-cluster          1.0.1.RELEASE

spring-cloud-consul          1.0.2.RELEASE 1.1.0.M1    1.1.0.BUILD-SNAPSHOT

spring-cloud-sleuth          1.0.6.RELEASE 1.0.6.RELEASE 1.0.7.BUILD-SNAPSHOT

spring-cloud-stream          1.0.2.RELEASE Brooklyn.M1  Brooklyn.BUILD-SNAPSHOT

spring-cloud-zookeeper         1.0.2.RELEASE 1.0.2.RELEASE 1.0.3.BUILD-SNAPSHOT

spring-boot      1.2.8.RELEASE 1.3.7.RELEASE 1.4.0.RELEASE 1.4.0.RELEASE

spring-cloud-task           1.0.2.RELEASE 1.0.2.RELEASE 1.0.3.BUILD-SNAPSHOT

不难看出,最初的Angel版本相对来说拥有的子项目较少,Brixton、Camden则拥有更全的子项目,所以能提供更多的组件支持。Brixton 的发布子项目更为稳定,Camden 则更为前瞻。

由于Brixton版本包含了大部分的Spring Cloud子项目,并且均为Release版本,所以本文所有示例以及讲解内容的编写均采用Brixton.SR5版本,基于Spring Boot 1.3.7版本。

注意:在本书完成时,Brixton版本已经升级到SR7,本书中的示例均可直接使用Brixton.SR7来完成,但是在使用Brixton版本的时候需要注意Spring Boot的版本,必须使用1.3.x版本,而不能使用1.4.x版本,否则会出现各种问题。若一定要使用Spring 1.4.x版本的话,必须将Spring Cloud版本升级到Camden版本,目前Camden 已经发布 Release版本,所以可以放心使用,最新版本为Camden.SR3。另外,Camden版本虽然可以兼容Brixton版本中的各种实现方法,但是在升级后读者会发现有一些方法已经被标注为过期,对于这些过期的使用方法,笔者后续会在博客中逐个编写博文来说明这些更新内容。所以,有兴趣的读者可以关注我的博客(http://blog.didispace.com),来持续获取Spring Cloud的一些最新动态。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文