詳解SpringBoot與SpringCloud的版本對應(yīng)詳細(xì)版
緣起
初學(xué)spring cloud的朋友可能不知道,其實(shí)SpringBoot與SpringCloud需要版本對應(yīng),否則可能會(huì)造成很多意料之外的錯(cuò)誤,比如eureka注冊了結(jié)果找不到服務(wù)類啊,比如某些jar導(dǎo)入不進(jìn)來啊,等等這些錯(cuò)誤。下面列出來springBoot和spring cloud的版本對應(yīng)關(guān)系,需要配套使用,才不會(huì)出現(xiàn)各種奇怪的錯(cuò)誤。
關(guān)于maven倉庫的版本列表
spring-cloud-dependencies 版本列表可查看:https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependenciesspring-boot-starter-parent 版本列表可查看:https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent
版本對應(yīng)關(guān)系
大版本對應(yīng):
Spring Cloud Spring Boot Angel版本 兼容Spring Boot 1.2.x Brixton版本 兼容Spring Boot 1.3.x,也兼容Spring Boot 1.4.x Camden版本 兼容Spring Boot 1.4.x,也兼容Spring Boot 1.5.x Dalston版本、Edgware版本 兼容Spring Boot 1.5.x,不兼容Spring Boot 2.0.x Finchley版本 兼容Spring Boot 2.0.x,不兼容Spring Boot 1.5.x Greenwich版本 兼容Spring Boot 2.1.x Hoxtonl版本 兼容Spring Boot 2.2.x
在實(shí)際開發(fā)過程中,我們需要更詳細(xì)的版本對應(yīng):
Spring Boot Spring Cloud 1.5.2.RELEASE Dalston.RC1 1.5.9.RELEASE Edgware.RELEASE 2.0.2.RELEASE Finchley.BUILD-SNAPSHOT 2.0.3.RELEASE Finchley.RELEASE 2.1.0.RELEASE-2.1.14.RELEASE Greenwich.SR5 2.2.0.M4 Hoxton.SR4
關(guān)于spring cloud1.x版本和2.x版本區(qū)別
spring cloud各個(gè)版本之間是有所區(qū)別的,比如在SpringCloud中,1.X和2.X版本在pom.xml中引入的jar包名字都不一樣,比如有的叫spirng-cloud-starter-hystrix 有的叫spring-cloud-netflix-hystrix,維護(hù)起來會(huì)比較困難。
1.x版本pom.xml里幾個(gè)基本用到的jar長這樣:
<project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd'> <modelVersion>4.0.0</modelVersion> <groupId>com.joyce</groupId> <artifactId>joyce-test</artifactId> <version>1.0</version> <packaging>jar</packaging> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <relativePath /> </parent> <dependencyManagement> <dependencies> <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Edgware.RELEASE</version><type>pom</type><scope>import</scope> </dependency> </dependencies> </dependencyManagement> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-feign</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-hystrix</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-zipkin</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions><!-- 排除spring boot默認(rèn)使用的tomcat,使用jetty --><exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId></exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jetty</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-ribbon</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies></project>
而在2.x版本中,比如我們需要eureka,去maven倉庫中可能會(huì)看到deprecated, please use spring-cloud-starter-netflix-eureka-client這類提示,包括使用ribbon也會(huì)有
所以個(gè)人猜測2.x中統(tǒng)一用spring-cloud-starter-netflix-xx 替換了原有的 spring-cloud-starter-xx(此處如有不正確請指出)所以2.x的版本pom.xml類似如下這樣
<project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd'> <modelVersion>4.0.0</modelVersion> <groupId>com.forezp</groupId> <artifactId>service-feign</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>service-feign</name> <description>Demo project for Spring Boot</description> <parent> <groupId>com.forezp</groupId> <artifactId>sc-f-chapter3</artifactId> <version>0.0.1-SNAPSHOT</version> </parent> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> </dependencies> </project>
到此這篇關(guān)于詳解SpringBoot與SpringCloud的版本對應(yīng)詳細(xì)版的文章就介紹到這了,更多相關(guān)SpringBoot與SpringCloud版本對應(yīng)內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. H5頁面使用audio標(biāo)簽播放音頻2. XHTML 1.0:標(biāo)記新的開端3. react axios 跨域訪問一個(gè)或多個(gè)域名問題4. ASP.NET MVC通過勾選checkbox更改select的內(nèi)容5. CSS3使用過度動(dòng)畫和緩動(dòng)效果案例講解6. 利用FastReport傳遞圖片參數(shù)在報(bào)表上展示簽名信息的實(shí)現(xiàn)方法7. 詳解php如何合并身份證正反面圖片為一張圖片8. AspNetCore&MassTransit Courier實(shí)現(xiàn)分布式事務(wù)的詳細(xì)過程9. AJAX實(shí)現(xiàn)省市縣三級聯(lián)動(dòng)效果10. ASP.NET MVC視圖頁使用jQuery傳遞異步數(shù)據(jù)的幾種方式詳解
