Spring Cloud Alibaba、Spring Boot、Spring Cloud版本對應關系


SpringBoot和SpringCloud版本關系
在搭建SpringCloud項目環境架構的時候,需要選擇SpringBoot和SpringCloud進行兼容的版本號,因此對於選擇SpringBoot版本與SpringCloud版本的對應關系很重要,如果版本關系不對應,常見的會遇見項目啟動不起來,怪異的則會是你的項目出現一些詭異的問題,查資料也不好查。下面就收集一下SpringBoot與SpringCloud版本之間的對應關系,在搭建項目框架或者學習時按照對應的版本區間進行選擇即可,避免走一些不必要的彎路。
Spring Cloud Release Train Spring Boot Version
Hoxton 2.2.x
Greenwich 2.1.x
Finchley 2.0.x
Edgware 1.5.x
Dalston 1.5.x
Camden 1.4.x
Brixton 1.3.x
Angle 1.2.x
注意: 官方通告SpringBoot1.5.x及以下版本官方不再提供維護了,建議開發者選擇使用SpringBoot2.0.x以上的版本,相對應的SpringCloud版本也最好不要使用。
訪問Spring官方地址,可獲取SpringBoot和SpringCloud版本對應信息。地址:https://start.spring.io/actuator/info

 

 項目搭建初期,如何對SpringBoot和SpringCloud的一個相互兼容性版本號進行選擇,這是很重要的一步,例如SpringCloud的Hoxton.SR3這個版本,他對應的"Spring Boot >=2.2.0.M4 and <2.3.0.BUILD-SNAPSHOT"版本,意思就是如果選擇使用SpringCloud的Hoxton.SR3這個版本,那么SpringBoot的版本需要大於等於2.2.0小於2.3.0即可滿足兼容性。

引入SpringCloud版本管理:
官方提供了管理Spring Cloud每個版本兼容的pom,引入下面依賴管理信息即可:
<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Hoxton.SR3</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
 </dependencyManagement>

使用Spring Boot:

Spring Boot可以也像父工程那樣管理自己內部的兼容版本號,如下:
<parent>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
   <version>2.2.5.RELEASE</version>
   <relativePath/> <!-- lookup parent from repository -->
</parent>

 

SpringBoot、SpringCloud、SpringCloudAlibaba版本對應關系
由於Spring Cloud基於Spring Boot構建,而Spring Cloud Alibaba又基於Spring Cloud Common的規范實現,所以當我們使用Spring Cloud Alibaba來構建微服務應用的時候,需要知道這三者之間的版本關系。
下表整理了目前Spring Cloud Alibaba的版本與Spring Boot、Spring Cloud版本的兼容關系:
畢業版本依賴關系(推薦使用):

 

 

Spring Cloud Alibaba與組件版本關系
Spring Cloud Alibaba是基於Spring Cloud Common的規范實現,而Spring Cloud Alibaba內的各個微服務組件依賴於Spring Cloud Alibaba自身,因此我們需要知道Spring Cloud Alibaba與其自身微服務組件之間的版本關系。
下表整理了目前Spring Cloud Alibaba的版本與Sentinel、Nacos 、RocketMQ 、Dubbo、Seata版本的兼容關系:
組件版本關系:

 

 版本管理規范:

項目的版本號格式為 x.x.x 的形式,其中 x 的數值類型為數字,從 0 開始取值,且不限於 0~9 這個范圍。項目處於孵化器階段時,第一位版本號固定使用 0,即版本號為 0.x.x 的格式。
由於Spring Boot 1 和 Spring Boot 2 在 Actuator 模塊的接口和注解有很大的變更,且 spring-cloud-commons 從 1.x.x 版本升級到 2.0.0 版本也有較大的變更,因此我們采取跟 SpringBoot 版本號一致的版本:
1.5.x 版本適用於 Spring Boot 1.5.x
2.0.x 版本適用於 Spring Boot 2.0.x
2.1.x 版本適用於 Spring Boot 2.1.x
2.2.x 版本適用於 Spring Boot 2.2.x
 
總結:
由於Spring Cloud基於Spring Boot構建,而Spring Cloud Alibaba又基於Spring Cloud Common的規范實現,所以當我們使用Spring Cloud Alibaba來構建微服務應用的時候,需要知道這三者之間的版本關系。可以通過各自的官網和相應的github地址查看版本說明和對應關系。
參考文檔:
Spring-Cloud-Alibaba版本說明:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本說明
SpringBoot和SpringCloud版本對應信息查詢地址:https://start.spring.io/actuator/info


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM