文档章节

SpringBoot与SpringCloud的版本对应详细版

o
 osc_zoa3moe9
发布于 2019/12/07 14:38
字数 1307
阅读 5
收藏 0

精选30+云产品,助力企业轻松上云!>>>

<div id="content_views" class="markdown_views prism-atom-one-dark"> <!-- flowchart 箭头图标 勿删 --> <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> <h1><a id="_1"></a>缘起</h1> <p>初学spring cloud的朋友可能不知道,其实SpringBoot与SpringCloud需要版本对应,否则可能会造成很多意料之外的错误,比如eureka注册了结果找不到服务类啊,比如某些jar导入不进来啊,等等这些错误。下面列出来springBoot和spring cloud的版本对应关系,需要配套使用,才不会出现各种奇怪的错误。</p> <h1><a id="maven_4"></a>关于maven仓库的版本列表</h1> <p>spring-cloud-dependencies 版本列表可查看:<br> <a href="https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependencies" rel="nofollow">https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependencies</a><br> spring-boot-starter-parent 版本列表可查看:<br> <a href="https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent" rel="nofollow">https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent</a></p> <h1><a id="_9"></a>版本对应关系</h1> <p>大版本对应:</p>

<table> <thead> <tr> <th>Spring Cloud</th> <th>Spring Boot</th> </tr> </thead> <tbody> <tr> <td>Angel版本</td> <td>兼容Spring Boot 1.2.x</td> </tr> <tr> <td>Brixton版本</td> <td>兼容Spring Boot 1.3.x,也兼容Spring Boot 1.4.x</td> </tr> <tr> <td>Camden版本</td> <td>兼容Spring Boot 1.4.x,也兼容Spring Boot 1.5.x</td> </tr> <tr> <td>Dalston版本、Edgware版本</td> <td>兼容Spring Boot 1.5.x,不兼容Spring Boot 2.0.x</td> </tr> <tr> <td>Finchley版本</td> <td>兼容Spring Boot 2.0.x,不兼容Spring Boot 1.5.x</td> </tr> <tr> <td>Greenwich版本</td> <td>兼容Spring Boot 2.1.x</td> </tr> </tbody> </table><p>在实际开发过程中,我们需要更详细的版本对应:</p>

<table> <thead> <tr> <th>Spring Boot</th> <th>Spring Cloud</th> </tr> </thead> <tbody> <tr> <td>1.5.2.RELEASE</td> <td>Dalston.RC1</td> </tr> <tr> <td>1.5.9.RELEASE</td> <td>Edgware.RELEASE</td> </tr> <tr> <td>2.0.2.RELEASE</td> <td>Finchley.BUILD-SNAPSHOT</td> </tr> <tr> <td>2.0.3.RELEASE</td> <td>Finchley.RELEASE</td> </tr> </tbody> </table><h1><a id="spring_cloud1x2x_26"></a>关于spring cloud1.x版本和2.x版本区别</h1> <p>spring cloud各个版本之间是有所区别的,比如在SpringCloud中,1.X和2.X版本在pom.xml中引入的jar包名字都不一样,比如有的叫spirng-cloud-starter-hystrix 有的叫spring-cloud-netflix-hystrix,维护起来会比较困难。</p> <p>1.x版本pom.xml里几个基本用到的jar长这样:</p> <pre><code onclick="mdcp.signin(event)" style="position: unset;">&lt;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"&gt; &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt; &lt;groupId&gt;com.joyce&lt;/groupId&gt; &lt;artifactId&gt;joyce-test&lt;/artifactId&gt; &lt;version&gt;1.0&lt;/version&gt; &lt;packaging&gt;jar&lt;/packaging&gt;

    &lt;parent&gt;
        &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
        &lt;artifactId&gt;spring-boot-starter-parent&lt;/artifactId&gt;
        &lt;version&gt;1.5.9.RELEASE&lt;/version&gt;
        &lt;relativePath /&gt; 
    &lt;/parent&gt;
    
    &lt;dependencyManagement&gt;
        &lt;dependencies&gt;
            &lt;dependency&gt;
                &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt;
                &lt;artifactId&gt;spring-cloud-dependencies&lt;/artifactId&gt;
                &lt;version&gt;Edgware.RELEASE&lt;/version&gt;
                &lt;type&gt;pom&lt;/type&gt;
                &lt;scope&gt;import&lt;/scope&gt;
            &lt;/dependency&gt;
        &lt;/dependencies&gt;
    &lt;/dependencyManagement&gt;
    
    &lt;properties&gt;
        &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;
    &lt;/properties&gt;

    &lt;dependencies&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt;
            &lt;artifactId&gt;spring-cloud-starter-feign&lt;/artifactId&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt;
            &lt;artifactId&gt;spring-cloud-starter-hystrix&lt;/artifactId&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt;
            &lt;artifactId&gt;spring-cloud-starter-zipkin&lt;/artifactId&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt;
            &lt;artifactId&gt;spring-cloud-starter-eureka&lt;/artifactId&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
            &lt;artifactId&gt;spring-boot-starter-actuator&lt;/artifactId&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
            &lt;artifactId&gt;spring-boot-starter-web&lt;/artifactId&gt;
            &lt;exclusions&gt;
                &lt;!-- 排除spring boot默认使用的tomcat,使用jetty --&gt;
                &lt;exclusion&gt;
                    &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
                    &lt;artifactId&gt;spring-boot-starter-tomcat&lt;/artifactId&gt;
                &lt;/exclusion&gt;
            &lt;/exclusions&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
            &lt;artifactId&gt;spring-boot-starter-jetty&lt;/artifactId&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt;
            &lt;artifactId&gt;spring-cloud-starter-ribbon&lt;/artifactId&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
            &lt;artifactId&gt;spring-boot-starter-test&lt;/artifactId&gt;
            &lt;scope&gt;test&lt;/scope&gt;
        &lt;/dependency&gt;
    &lt;/dependencies&gt;
&lt;/project&gt;

<div class="hljs-button signin" data-title="登录后复制"></div></code></pre> <p>而在2.x版本中,比如我们需要eureka,去maven仓库中可能会看到deprecated, please use spring-cloud-starter-netflix-eureka-client这类提示,包括使用ribbon也会有<br> <img src="https://img-blog.csdnimg.cn/20190418113856931.png" alt="在这里插入图片描述"><br> <img src="https://img-blog.csdnimg.cn/20190418113950552.png" alt="在这里插入图片描述"><br> 所以个人猜测2.x中统一用<br> spring-cloud-starter-netflix-xx 替换了原有的 spring-cloud-starter-xx(此处如有不正确请指出)<br> 所以2.x的版本pom.xml类似如下这样</p> <pre><code onclick="mdcp.signin(event)" style="position: unset;">&lt;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"&gt; &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;

&lt;groupId&gt;com.forezp&lt;/groupId&gt;
&lt;artifactId&gt;service-feign&lt;/artifactId&gt;
&lt;version&gt;0.0.1-SNAPSHOT&lt;/version&gt;
&lt;packaging&gt;jar&lt;/packaging&gt;

&lt;name&gt;service-feign&lt;/name&gt;
&lt;description&gt;Demo project for Spring Boot&lt;/description&gt;


&lt;parent&gt;
    &lt;groupId&gt;com.forezp&lt;/groupId&gt;
    &lt;artifactId&gt;sc-f-chapter3&lt;/artifactId&gt;
    &lt;version&gt;0.0.1-SNAPSHOT&lt;/version&gt;
&lt;/parent&gt;

&lt;dependencies&gt;
    &lt;dependency&gt;
        &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt;
        &lt;artifactId&gt;spring-cloud-starter-netflix-eureka-client&lt;/artifactId&gt;
    &lt;/dependency&gt;
    &lt;dependency&gt;
        &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
        &lt;artifactId&gt;spring-boot-starter-web&lt;/artifactId&gt;
    &lt;/dependency&gt;
    &lt;dependency&gt;
        &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt;
        &lt;artifactId&gt;spring-cloud-starter-openfeign&lt;/artifactId&gt;
    &lt;/dependency&gt;
&lt;/dependencies&gt;

&lt;/project&gt;

<div class="hljs-button signin" data-title="登录后复制"></div></code></pre>

                                </div>
o
粉丝 1
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
F版本SpringCloud 2—什么是SpringCloud?SpringCloud版本选择

本文分享自微信公众号 - 鹿小洋的Java笔记(lulaoshiJava)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。...

鹿老师的Java笔记
03/26
0
0
F版本SpringCloud 2—什么是SpringCloud?SpringCloud版本选择

引言:搭建微服务架构就像是买电脑,使用SpringCloud就是在买品牌机。 前言 昂,美好的天气里,不想直接说技术,给小伙伴萌看看傍晚的天空吧。 —— 能找到天上的北极星吗? 上一篇文章中,通...

osc_o60il3e6
04/16
1
0
F版本SpringCloud 2—什么是SpringCloud?SpringCloud版本选择

引言:搭建微服务架构就像是买电脑,使用SpringCloud就是在买品牌机。 前言 昂,美好的天气里,不想直接说技术,给小伙伴萌看看傍晚的天空吧。 —— 能找到天上的北极星吗? 上一篇文章中,通...

鹿老师的Java笔记
03/26
7
0
SpringCloud二阶段学习(H版)

  前言: 此文章为记录尚硅谷周阳老师的2020最新版Springcloud的学习笔记,跟着尚硅谷周阳老师一步步构建分布式微服务架构 一、版本定位 1、SpringBoot版本选择   Github源码地址:https...

osc_unnbi4yg
03/22
27
0
【原创】SpringBoot & SpringCloud 快速入门学习笔记(完整示例)

【原创】SpringBoot & SpringCloud 快速入门学习笔记(完整示例) 1月前在系统的学习SpringBoot和SpringCloud,同时整理了快速入门示例,方便能针对每个知识点,能有简单的、完整的、可快速运行...

osc_evi50j4g
2018/07/28
2
0

没有更多内容

加载失败,请刷新页面

加载更多

使用命名管道承载gRPC

最近GRPC很火,感觉整RPC不用GRPC都快跟不上时髦了。 gRPC设计 gRPC是一种与语言无关的高性能远程过程调用 (RPC) 框架。刚好需要使用一个的RPC应用系统,自然而然就盯上了它,但是它真能够解...

osc_nq69o22c
17分钟前
16
0
06-敏捷开发框架-apis 脚本库 引用位置无关性设计

动态引入技术的设计,对我们来说非常重要。 同时也说明动态语言的使用对我们来说也是非常重要。 没有动态语言的支撑,有些想法可能不容易实现,或者有替代方案,可能会花更大的代价。 前端开...

osc_5zg9z6t1
19分钟前
21
0
(三)学习了解OrchardCore笔记——灵魂中间件ModularTenantContainerMiddleware的第一行①的模块部分

  了解到了OrchardCore主要由两个中间件(ModularTenantContainerMiddleware和ModularTenantRouterMiddleware)构成,下面开始了解ModularTenantContainerMiddleware中间件第一行代码。   ...

osc_kdarxvx0
21分钟前
15
0
50Mn18Cr4V锻锻环件

电机无磁护环怎么锻性能才能《高高》?50Mn18Cr4V高锰无磁钢在变形温度为900~1 100℃、应变速率为0.1 ~10s-1条件下的热变形行为. 结果,VC第二相的应变诱导析出对50Mn18Cr4V的热变形行为产生...

无磁钢
21分钟前
16
0
【遇见offer】一汽-大众实习生专场来啦!成长+学习+福利,一个也不能少~

在上次一汽-大众的社招直播之后,实习生的专场招聘也终于来啦! 针对2020年暑期,我们提供了非常多的实习岗位给大家选择。 如果你想得到大厂实习的宝贵经验,如果你想得到更快速的成长,如果...

osc_b88oux8w
22分钟前
25
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部