版本选择—SpringCloud(H版)微服务学习教程(2)

Java技术 潘老师 3年前 (2021-03-22) 2185 ℃ (0) 扫码查看

我们在学习一套框架时,对框架的版本选择尤为重要,尤其是在许多框架组件需要组合的情况下,如果出现某个组件版本不兼容,那可能是灾难性的,因此,我们需要在正式学习SpringCloud前,做好相关版本选择。

提示:可直接拉到文章最后看定稿版本

1、版本总览:

由于我们主要用到SpringBootSpring Cloud以及Spring Cloud Alibaba我们访问如下王者查看他们的对应关系:点击查看版本对应关系
(截至2021.3.22如图:)
版本选择—SpringCloud(H版)微服务学习教程(2)

2、Spring Cloud版本

我们先打开Spring Cloud官网:点此查看官网
版本选择—SpringCloud(H版)微服务学习教程(2)
我们选择H版,也是目前市场上目前比较流行的版本,更具体的我们可以点进去,目前已经更新到了Hoxton.SR10,但我们选择Hoxton.SR8版本,其中更多组件版本如图:
版本选择—SpringCloud(H版)微服务学习教程(2)

提示:
SpringBoot的版本号是通过数字来命名的,SpringCloud则是通过希腊英文字母的方式,在发布的版本时是以伦敦地铁站作为版本命名,并按地铁站名称的首字母A-Z依次命名。

3、SpringBoot版本

我们先打开SpringBoot官网:点此查看官网我们发现SpringBoot已经更新到了2.4.4了,但我们选择了2.3.2.RELEASE版本

4、版本对应关系查询小技巧

版本对应关系查询另外一个小技巧就是访问如下网址:版本对应关系查询,会返回一串json,我们复制,找个json格式化网站去格式化后,发现目前的版本对应关系如下:

{
"git": {
"branch": "100993521962b2a36eebcca56205ca0345bfecf5",
"commit": {
"id": "1009935",
"time": "2021-03-19T13:15:52Z"
}
},
"build": {
"version": "0.0.1-SNAPSHOT",
"artifact": "start-site",
"versions": {
"spring-boot": "2.4.4",
"initializr": "0.11.0-SNAPSHOT"
},
"name": "start.spring.io website",
"time": "2021-03-19T13:18:08.098Z",
"group": "io.spring.start"
},
"bom-ranges": {
"azure": {
"2.2.4": "Spring Boot >=2.2.0.RELEASE and <2.3.0.M1",
"3.2.0": "Spring Boot >=2.3.0.M1 and <2.4.0-M1"
},
"codecentric-spring-boot-admin": {
"2.2.4": "Spring Boot >=2.2.0.RELEASE and <2.3.0.M1",
"2.3.1": "Spring Boot >=2.3.0.M1 and <2.5.0-M1"
},
"solace-spring-boot": {
"1.0.0": "Spring Boot >=2.2.0.RELEASE and <2.3.0.M1",
"1.1.0": "Spring Boot >=2.3.0.M1 and <2.5.0-M1"
},
"solace-spring-cloud": {
"1.0.0": "Spring Boot >=2.2.0.RELEASE and <2.3.0.M1",
"1.1.1": "Spring Boot >=2.3.0.M1 and <2.4.0-M1",
"2.0.0": "Spring Boot >=2.4.0.M1 and <2.5.0-M1"
},
"spring-cloud": {
"Hoxton.SR10": "Spring Boot >=2.2.0.RELEASE and <2.3.10.BUILD-SNAPSHOT",
"Hoxton.BUILD-SNAPSHOT": "Spring Boot >=2.3.10.BUILD-SNAPSHOT and <2.4.0.M1",
"2020.0.0-M3": "Spring Boot >=2.4.0.M1 and <=2.4.0.M1",
"2020.0.0-M4": "Spring Boot >=2.4.0.M2 and <=2.4.0-M3",
"2020.0.0": "Spring Boot >=2.4.0.M4 and <=2.4.0",
"2020.0.2": "Spring Boot >=2.4.1 and <2.5.0-M1",
"2020.0.3-SNAPSHOT": "Spring Boot >=2.4.5-SNAPSHOT"
},
"spring-cloud-alibaba": {
"2.2.1.RELEASE": "Spring Boot >=2.2.0.RELEASE and <2.3.0.M1"
},
"spring-cloud-gcp": {
"2.0.0": "Spring Boot >=2.4.0-M1 and <2.5.0-M1"
},
"spring-cloud-services": {
"2.2.6.RELEASE": "Spring Boot >=2.2.0.RELEASE and <2.3.0.RELEASE",
"2.3.0.RELEASE": "Spring Boot >=2.3.0.RELEASE and <2.4.0-M1",
"2.4.1": "Spring Boot >=2.4.0-M1 and <2.5.0-M1"
},
"spring-geode": {
"1.2.12.RELEASE": "Spring Boot >=2.2.0.RELEASE and <2.3.0.M1",
"1.3.9.RELEASE": "Spring Boot >=2.3.0.M1 and <2.4.0-M1",
"1.4.3": "Spring Boot >=2.4.0-M1 and <2.5.0-M1",
"1.5.0-M2": "Spring Boot >=2.5.0-M1"
},
"vaadin": {
"14.4.10": "Spring Boot >=2.1.0.RELEASE and <2.5.0-M1"
},
"wavefront": {
"2.0.2": "Spring Boot >=2.1.0.RELEASE and <2.4.0-M1",
"2.1.0": "Spring Boot >=2.4.0-M1"
}
},
"dependency-ranges": {
"native": {
"0.9.0": "Spring Boot >=2.4.3 and <2.4.4-SNAPSHOT",
"0.9.1-SNAPSHOT": "Spring Boot >=2.4.4-SNAPSHOT and <2.5.0-M1"
},
"okta": {
"1.4.0": "Spring Boot >=2.2.0.RELEASE and <2.4.0-M1",
"1.5.1": "Spring Boot >=2.4.0-M1 and <2.4.1",
"2.0.1": "Spring Boot >=2.4.1 and <2.5.0-M1"
},
"mybatis": {
"2.1.4": "Spring Boot >=2.1.0.RELEASE and <2.5.0-M1"
},
"camel": {
"3.3.0": "Spring Boot >=2.2.0.RELEASE and <2.3.0.M1",
"3.5.0": "Spring Boot >=2.3.0.M1 and <2.4.0-M1",
"3.8.0": "Spring Boot >=2.4.0.M1 and <2.5.0-M1"
},
"open-service-broker": {
"3.1.1.RELEASE": "Spring Boot >=2.2.0.RELEASE and <2.3.0.M1",
"3.2.0": "Spring Boot >=2.3.0.M1 and <2.4.0-M1",
"3.3.0": "Spring Boot >=2.4.0-M1 and <2.5.0-M1"
}
}
}

5、最终版本定稿

框架/工具 版本
Spring Boot 2.3.2.RELEASE
Spring Cloud Hoxton.SR8
Spring Cloud Alibaba 2.2.5.RELEASE
JDK 1.8
Maven 3.5及以上
Mysql mysql 8
Intellij IDEA 2019.2

附:常用组件父项目pom依赖如下:

<!--spring boot 2.3.2.RELEASE-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.2.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--spring cloud Hoxton.SR8-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Hoxton.SR8</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--spring cloud alibaba 2.2.5.RELEASE-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
注意:该配置置于dependencyManagementdependencies中,约定统一版本,让子项目继承

如果你没有IDEA可参考:

Intellij IDEA下载安装步骤及永久破解的图文教程

Intellij IDEA开发工具使用起来非常方便,功能也极其强大,尤其是在使用SpringBoot做开发时, […]

如果你不会整合Maven请参考:

IntelliJ IDEA如何整合Maven图文教程详解

现在很多Java项目都是基于SpringBoot开发的,而SpringBoot项目基本都是基于Maven创建的 […]

如果你不是mysql8可参考:

MySQL8.0.20 Zip压缩版安装图文教程详解

MySQL数据库一般有两种安装方式,一种是MSI文件双击运行按步骤安装,和安装普通exe文件没什么区别,还有一 […]

注意:务必需要和潘老师的版本保持一致(IDEA除外),否则可能会出现意料之外的错误哦~
附:组件停更说明:

版本选择—SpringCloud(H版)微服务学习教程(2)


版权声明:本站文章,如无说明,均为本站原创,转载请注明文章来源。如有侵权,请联系博主删除。
本文链接:https://www.panziye.com/java/2582.html
喜欢 (0)
请潘老师喝杯Coffee吧!】
分享 (0)
用户头像
发表我的评论
取消评论
表情 贴图 签到 代码

Hi,您需要填写昵称和邮箱!

  • 昵称【必填】
  • 邮箱【必填】
  • 网址【可选】