SpringBoot和SpringCloud版本升级

一、升级步骤
将SpringBoot版本升级为目前最新的稳定版本2.2.6
SpringCloud版本升级为对应匹配Hoxton.SR4
如下图所示

org.springframework.boot
spring-boot-starter-parent
2.2.6.RELEASE

org.springframework.cloud spring-cloud-dependencies Hoxton.SR4 pom import

二、常见问题及解决方案
1、部分依赖artifactid发生变化的。例如用到eureka、hystrix、ribbon、redis依赖的需要将依赖artifactid改成新版本对应的名称。
例如
ribbon由原先的
spring-cloud-starter-ribbon
改为
spring-cloud-starter-netflix-ribbon

eureka由原先的
spring-cloud-starter-eureka
改为
spring-cloud-starter-netflix-eureka-client

其他的可通过以下地址去maven仓库查询新版本的依赖名称
https://mvnrepository.com/

2、启动报java.lang.NoClassDefFoundError: redis/clients/jedis/JedisPoolConfig

原因:缺少Jedis的依赖
解决办法:
引入以下依赖

redis.clients
jedis

3、
启动报EmbeddedServletContainerInitializedEvent类找不到

原因:
spirng-boot 2.0 之后将
org.springframework.boot.context.embedded.EmbeddedServletContainerInitializedEvent
修改为
org.springframework.boot.web.context.WebServerInitializedEvent
解决办法
1、如果是自己的代码对应的修改一下自己的代码即可。
2、如果是jar版本冲突,对应的升级一下冲突的jar包版本就好。
例如用到以下webservice依赖的需将版本升级到最新的3.3.6

org.apache.cxf
cxf-spring-boot-starter-jaxws
3.3.6

4、启动报org.springframework.web.servlet.HandlerInterceptor找不到
原因:缺少相关依赖
解决方法:引入以下依赖

org.springframework.boot
spring-boot-starter-web

5、启动报错(以下为长照计划域报错信息)
Description:
Configuration property name ‘submit.taskDecompose’ is not valid:
Invalid characters: ‘D’
Bean: assessmentTaskDecomposeController
Reason: Canonical names should be kebab-case (’-’ separated), lowercase alpha-numeric characters and must start with a letter

原因:
从报错信息可以看出,spring boot 2.x 中对配置文件中名称的命名规范进行了强制约束,需要使用kebab格式,不能使用java中的驼峰式写法了,分隔符使用 ’-‘ 来分隔
解决方法:将submit.taskDecompose修改为submit.task-decompose。

6、Error:(110,38) java: 不兼容的类型: org.springframework.data.domain.Sort.Order无法转换为java.util.List<org.springframework.data.domain.Sort.Order>

原因:springboot2.2.1(含)以上的版本Sort已经不能再实例化了,构造方法已经是私有的了。
解决方法:可以改用Sort.by获得Sort对象

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值