springcloud和springboot的版本问题

如果自己写的项目用到springboot和cloud,并且要升级,请记得不同的springcloud版本对应的springboot版本,不然会报很多错!
最常见的错误:

java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.<init>([Ljava/lang/Object;)

SpringCloud的版本

Spring Cloud 项目目前仍然是快速迭代期,版本变化很快。这里整理一下版本相关的东西,备忘一下。

大版本

版本号规则

Spring Cloud并没有熟悉的数字版本号,而是对应一个开发代号。

Cloud代号

Boot版本(train)

Boot版本(tested)

lifecycle

Angle

1.2.x

incompatible with 1.3

EOL in July 2017

Brixton

1.3.x

1.4.x

2017-07卒

Camden

1.4.x

1.5.x

-

Dalston

1.5.x

not expected 2.x

-

Edgware

1.5.x

not expected 2.x

-

Finchley

2.x

not expected 1.5.x

-

开发代号看似没有什么规律,但实际上首字母是有顺序的,比如:Dalston版本,我们可以简称 D 版本,对应的 Edgware 版本我们可以简称 E 版本。

D版本和E版本的区别

二者均基于SpringBoot的1.5.x版本。但支持其他组件的版本不同,如以 Dalston.SR4 和 Edgware.RELEASE 来对比:

spring-cloud-config 分别对应 1.3.3和 1.4.0;
spring-cloud-netflix 分别对应 1.3.5和 1.4.0;
spring-cloud-consul 分别对应 1.2.1和 1.3.0;
spring-cloud-gateway 前者不支持,后者 1.0.0。

每个小版本的不同,会有细微差别。

F版本

F版本是个绝对的大版本,几乎所有组件,全部同步变更版本号为2.x。

小版本

Spring Cloud 小版本分为:

SNAPSHOT: 快照版本,随时可能修改

M: MileStone,M1表示第1个里程碑版本,一般同时标注PRE,表示预览版版。

SR: Service Release,SR1表示第1个正式版本,一般同时标注GA:(GenerallyAvailable),表示稳定版本。

选择版本

大版本

  • 首先说明,各个版本之间组件变化不大,但细节略有不同,比如配置项名称、或者新版本增加新的配置方式。

从这一点来看,选择哪个版本都不是大问题,但提醒一下,遇到坑时,最好根据版本进行查询,否则你会发现你找到的办法不行。实际上是版本不匹配。

  • 如果你项目需要和其他老项目交叉,以兼容为第一要务。

  • 如果全新项目,可以考虑较新版本,如E版。如果你爱好踩坑,F拿去。

  • 小版本

    小版本没啥可说的,尝鲜:SNAPSHOT,生产:GA。

    https://blog.csdn.net/54powerman/article/details/79163440

    Spring Cloud与Spring Boot版本匹配关系

    在这篇文章中:

    • Spring Cloud版本
    • Spring Cloud与Spring Boot版本匹配关系

    Spring Cloud版本

    在写本篇文章时,Spring Cloud版本演进情况如下:

    版本名称

    版本

    Finchley

    snapshot版

    Edgware

    snapshot版

    Dalston SR1

    当前最新稳定版本

    Camden SR7

    稳定版本

    Brixton SR7

    稳定版本

    Angel SR6

    稳定版本

    从下Angel到上Finchley可以看出,版本的第一个字母是按照A-Z顺序编排的。这些单词是什么含义呢,大概的搜一下可以得出基本都是地名,官方说明是这些版本号的单词来自于英国伦敦的地铁站站名。

    那么为什么要用单词而不是数字类型的版本号呢? 因为Spring Cloud包含了一系列的子系统,Spring Cloud Config,Spring Cloud Netflix,Spring Cloud Bus等,为了防止与这些子系统的版本号混淆,Spring Cloud的版本号全部使用英文单词。

    版本号后面的SRX,X代表一个数字,这个是小版本号,就是在特定的版本中,修复一些致命问题,做的升级版本号。

    Spring Cloud与Spring Boot版本匹配关系

    Spring Cloud

    Spring Boot

    Finchley

    兼容Spring Boot 2.0.x,不兼容Spring Boot 1.5.x

    Dalston和Edgware

    兼容Spring Boot 1.5.x,不兼容Spring Boot 2.0.x

    Camden

    兼容Spring Boot 1.4.x,也兼容Spring Boot 1.5.x

    Brixton

    兼容Spring Boot 1.3.x,也兼容Spring Boot 1.4.x

    Angel

    兼容Spring Boot 1.2.x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值