博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
springCloud Finchley升级记录
阅读量:7091 次
发布时间:2019-06-28

本文共 4421 字,大约阅读时间需要 14 分钟。

hot3.png

最近开发新项目顺便升级 Springcloud Dalston.SR5 到当前最新版 Finchley.SR1

由于 springboot1.5.10到当前最新版 spring2.0.1版本 升级修改比较大,记录一下

首先修改一下springboot cloud 版本号其他不用变

部分配置文件名称修改了 添加一下以下依赖会提示如何迁移

org.springframework.boot
spring-boot-properties-migrator

artifactId

首先遇到的问题 cloud的部分jar的artifactId发生了变化

org.springframework.cloud
spring-cloud-starter-eureka
org.springframework.cloud
spring-cloud-starter-feign
org.springframework.cloud
spring-cloud-starter-hystrix
org.springframework.cloud
spring-cloud-sleuth-stream
org.springframework.cloud
spring-cloud-starter-zuul

修改为

#区分client和server了 设置对应的        
org.springframework.cloud
spring-cloud-starter-netflix-eureka-client
org.springframework.cloud
spring-cloud-starter-openfeign
org.springframework.cloud
spring-cloud-starter-netflix-hystrix
org.springframework.cloud
spring-cloud-stream
org.springframework.cloud
spring-cloud-starter-netflix-zuul

feign

feign的包名发生改变

org.springframework.cloud.netflix.feign变更为org.springframework.cloud.openfeign

Zuul

ZuulFallbackProvider 接口 已经过时了 使用FallbackProvider 即可方法基本一致

此外添加了String route, Throwable cause 参数可以根据不同的异常做不同降级处理

ZipKin

zipkin在最新版本中不推荐自建

可手动下载jar 直接运行

启动命令,相关配置 通过启动参数添加

RABBIT_URI=amqp://guest:guest@localhost:5672  STORAGE_TYPE=mysql MYSQL_DB=ag_zipkin MYSQL_USER=root MYSQL_PASS=123456 MYSQL_HOST=localhost MYSQL_USE_SSL=false java -jar zipkin.jar

也可继续使用老版本的不升级springboot

HikariCP

由于springboot2 默认使用了 HikariCP 所以原有的替换HikariCP pom里面可以去掉了 如果需要其他的需要替换HikariCP 跟之前一样移除对应依赖

endpoints

所有 endpoints 默认情况下都已移至 /actuator 无论您的应用程序中是否存在和配置 Spring Security,只有端点/health和/info端点都是暴露的 另外端点的格式和具体端点都有很多变化

springboot-admin

由于endponits 变化比较大,需要升级 springboot-admin 为 2.0.1

修改pom依赖

de.codecentric
spring-boot-admin-starter-server
2.0.1
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-security
org.springframework.cloud
spring-cloud-starter-netflix-eureka-client
org.jolokia
jolokia-core

由于 Spring Boot 2.0 的 Actuator 只暴露了 /health、/info 两个端口(为了安全考虑), 所以要配置 management.endpoints.web.exposure.include 的属性

management:  endpoints:    web:      exposure:        include: "*"

配置文件修改

server

server.context-path 修改为server.servlet.context-path

endpoints

#全局的endpoints设置已失效 endpoints:  enabled: true  sensitive: false

Flyway

Flyway 配置键被移动到spring命名空间(即spring.flyway)

redis

由于 jedis 升级为lettuce spring.redis.pool 修改为spring.reids.lettuce.pool 也可以移除 lettuce的依赖加上 jredis的

bug

如果出现以下循环引用异常 请升级springboot到2.0.4以上版本 或者设置spring.cloud.refresh.refreshable=none (但是同时也关闭了配置的刷新)

The dependencies of some of the beans in the application context form a cycle:   servletEndpointRegistrar defined in class path resource [org/springframework/boot/actuate/autoconfigure/endpoint/web/ServletEndpointManagementContextConfiguration.class]      ↓   healthEndpoint defined in class path resource [org/springframework/boot/actuate/autoconfigure/health/HealthEndpointConfiguration.class]      ↓   org.springframework.boot.actuate.autoconfigure.jdbc.DataSourceHealthIndicatorAutoConfiguration┌─────┐|  dataSource↑     ↓|  scopedTarget.dataSource defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]↑     ↓|  org.springframework.boot.autoconfigure.jdbc.DataSourceInitializerInvoker└─────┘

转载于:https://my.oschina.net/jayqqaa12/blog/2980981

你可能感兴趣的文章
一个简单的css3 动画例子
查看>>
关于几道SQL经典题详解
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
Facebook ATC 弱网测试项目部署
查看>>
关于p-vol和s-vol
查看>>
一八年第三天晚上十点半的thinking
查看>>
ksh和bash区别
查看>>
keepalived 组播的配置
查看>>
华为路由器交换机配置相关功能
查看>>
谷歌收购眼球追踪技术公司Eyefluence,眼动关注度将成为VR的新视角
查看>>
【蜕变之路】第32天 使用STS创建SpringBoot项目 (2019年3月22日)
查看>>
Oracle之数据挖掘的更新介绍
查看>>
NFS
查看>>
Exception异常处理
查看>>
第二十讲 任务的挂起和恢复
查看>>
emmm算是来了
查看>>
do…while语句
查看>>
网络工程师成长日记413-长安大学交换机项目
查看>>
jenkins
查看>>