詳解SpringBoot與SpringCloud的版本對(duì)應(yīng)詳細(xì)版
緣起
初學(xué)spring cloud的朋友可能不知道,其實(shí)SpringBoot與SpringCloud需要版本對(duì)應(yīng),否則可能會(huì)造成很多意料之外的錯(cuò)誤,比如eureka注冊(cè)了結(jié)果找不到服務(wù)類啊,比如某些jar導(dǎo)入不進(jìn)來啊,等等這些錯(cuò)誤。下面列出來springBoot和spring cloud的版本對(duì)應(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
版本對(duì)應(yīng)關(guān)系
大版本對(duì)應(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ì)的版本對(duì)應(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(此處如有不正確請(qǐng)指出)所以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的版本對(duì)應(yīng)詳細(xì)版的文章就介紹到這了,更多相關(guān)SpringBoot與SpringCloud版本對(duì)應(yīng)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. PHP驗(yàn)證碼工具-Securimage2. Vue 實(shí)現(xiàn)對(duì)quill-editor組件中的工具欄添加title3. JavaScript實(shí)現(xiàn)簡單的彈窗效果4. 我所理解的JavaScript中的this指向5. javascript實(shí)現(xiàn)貪吃蛇小練習(xí)6. PHP利用curl發(fā)送HTTP請(qǐng)求的實(shí)例代碼7. Java commons-httpclient如果實(shí)現(xiàn)get及post請(qǐng)求8. PHP單件模式和命令鏈模式的基礎(chǔ)知識(shí)9. 一文帶你徹底理解Java序列化和反序列化10. js實(shí)現(xiàn)碰撞檢測

網(wǎng)公網(wǎng)安備