spring有漏洞领导要升级(虽然我们还是用的jdk8),纱布了,升级吧,反正早晚也得升。

最新springframework 应该是5.3.18,去springboot官方查查对应的boot版本,是2.6.6

因为用的gradle的plugin,省了很多版本配置了

哦,版本是2.1.6.RELEASE ->2.6.6

第一坑 gradle不支持高版本的spring,下载gradle7.2

第二坑 idea不支持高版本gradle,下载idea2021.3.3(30天后面的事自行处理)

第三坑 高版本gradle,应该是7.x不支持compile了,必须给引用改成implementation

第四坑 @Valid引不进来了,发现hibernate的引用没有了,手动添加

implementation('org.springframework.boot:spring-boot-starter-validation')

第五坑 cloud的组件版本和boot的版本不一致,这里我用了ribbon和openfeign,使用大概方法和各种尝试找到版本

​    implementation('org.springframework.cloud:spring-cloud-starter-netflix-ribbon:2.2.10.RELEASE')

implementation('org.springframework.cloud:spring-cloud-starter-openfeign:3.1.1')

第六坑 我guava没了,手动引一下吧

implementation('com.google.guava:guava:30.1.1-jre')

第七坑 feign的一些api变了,不过都还好比较容易解决

request.requestBody().asBytes() 简化成了request.body()

feignException构造方法增加了status的参数等

至此,完成了七宗罪,基本上可以解决编译问题了,后面就是先起本地,再打包上测试环境了,开始。

  1. 本地起的时候报了很多的循环依赖,确实是有循环依赖问题,解决方法一个是加Lazy,一个是加配置spring.main. allow-circular-references:true,个人比较倾向于加lazy吧,毕竟熟一点。
  2. Quartz报找不到数据源,查了一下高版本的jobStore.class需要换一下:org.quartz.impl.jdbcjobstore.JobStoreTX -> org.springframework.scheduling.quartz.LocalDataSourceJobStore
  3. 报错Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException。网上说的加一个spring.mvc.pathmatch.matching-strategy: ANT_PATH_MATCHER,确实好使但是还没明白什么意思,后面还得研究下
  4. Swagger虽然升级了但是访问不通,这个还挺棘手因为网上也没查到什么建议:我看依赖和启动项,swagger包确实是进去了的,盲猜是因为访问路径改了,可以网上找了几个路径还真就访问不了。没办法看看源码吧,毕竟swagger的之前看过不是很困难。找到了springfox.documentation.swagger-ui.base-url配置项可以配置访问的context路径,然后最后路径是swagger-ui。好吧,配置一下springfox.documentation.swagger-ui.base-url=swagger,然后访问路径就成了swagger/swagger-ui。我们用这个当的docker pod的探针,所以比较关心。
  5. FeignClient的写法变了。我们有动态的调用不同IP的业务,类似于中心服务调用各个地区分区的节点这样。秉承着能用就行的方针,就将feignClient的url设置为’http://’,然后通过path参数设置的IP和端口。现在这么设置不行了,比如原本调用http://1.1.1.1:8080,现在变成了http://null//1.1.1.1:8080。最后查了下应该这么写,参数里加一个URI参数,参数里放ip端口就可以了。
  6. 貌似还有其他的问题,忘了。

springboot项目版本升级相关推荐

  1. spring项目如何升级mysql包_SpringBoot项目版本升级:从1.5.3升级到2.1.8版本

    SpringBoot项目版本升级:从1.5.3升级到2.1.8版本 前言 简单记录一次本人在自己的SpringBoot项目project-template中,把1.5.3版本升级到2.1.8版本时升级 ...

  2. 创建一个SpringBoot项目

    Spring的诞生是为了简化JAVA程序的开发的 快速开发Spring而诞生的 SpringBoot为了快速开发Spring而诞生的一个框架 1)什么是SpringBoot?为什么要学它?(重要) S ...

  3. Dockerfile springboot项目拿走即用,将yml配置文件从外部挂入容器

    Dockerfile 将springboot项目jar包打成镜像,并将yml配置文件外挂. # 以一个镜像为基础,在其上进行定制.就像我们之前运行了一个 nginx 镜像的容器,再进行修改一样,基础镜 ...

  4. SpringBoot项目使用nacos,kotlin使用nacos,java项目使用nacos,gradle项目使用nacos,maven项目使用nacos

    SpringBoot项目使用nacos kotlin demo见Gitte 一.引入依赖 提示:这里推荐使用2.2.3版本,springboot与nacos的依赖需要版本相同,否则会报错. maven ...

  5. win10安装docker并结合Idea2018.1部署springboot项目

    一.准备工作 1..工具:win10,idea2018,maven3.5,jdk8 二.win10安装docker 1.win10安装docker:http://www.runoob.com/dock ...

  6. 关于SpringBoot项目通过jar包启动之后无法读取项目根路径静态资源

    前言:这个是昨天晚上在部署一个项目的时候发现的,在此记录一下 关于SpringBoot项目通过jar包启动之后无法读取项目根路径静态资源 问题描述 在部署了一个项目之后,打开项目页面进行测试,发现有一 ...

  7. 使用idea创建springboot项目并打成war包发布到weblogic上...

    部署tomcat也是类似的,但是需要注意项目配置的路径,或者直接将项目放到webapp的ROOT目录下. 使用工具:intelliJ IDEA2016.3, jdk1.8 ,weblogic12 一 ...

  8. SpringBoot项目打包war部署到服务器去掉项目名所遇到的坑

    个人资源与分享网站:http://xiaocaoshare.com/ 前言 将SpringBoot项目打成war主要是方便自己后期维护,也就是每次更新网站的时候不需要打成jar包,主要是文件太大,复制 ...

  9. 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上

    一个用于构建和推送Docker镜像的Maven插件. 使用Maven插件构建Docker镜像,将Docker镜像push到DockerHub上,或者私有仓库,上一篇文章是手写Dockerfile,这篇 ...

  10. Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo

    Docker 部署SpringBoot项目整合 Redis 镜像做访问计数Demo 最终效果如下 大概就几个步骤 1.安装 Docker CE 2.运行 Redis 镜像 3.Java 环境准备 4. ...

最新文章

  1. Wireshark抓包与常见问题解决
  2. html5子页面无法弹出,弹出子页面,兼容ie
  3. anaconda和python有什么不一样_黄山毛峰的味道为什么会不一样?
  4. ASP.NET MVC5(一):ASP.NET MVC概览
  5. qt中设置控件不能使用
  6. Flutter中嵌入Android 原生TextView
  7. nutwk的maven中央仓库及配置
  8. 一个action类中写多个方法需要继承MappingDispatchAction
  9. 美国亚马逊账号被锁定之后
  10. iframe框根据内容自适应高度
  11. 深度学习之目标检测 第3章 传统目标检测方法基本流程
  12. 怎样建设智慧公厕综合信息管理系统?如何让智慧公厕实现综合信息管理功能?@中期科技ZONTREE智慧厕所
  13. php mysql上机题_基于PHP+MySQL的题库管理系统
  14. ajax点击事件click触发两次,jQuery点击click触发两次事件解决办法
  15. TypeError: empty() received an invalid combination of arguments
  16. 如何有效运维管理光伏电站?
  17. 分享美团、字节、腾讯,java从入门到精通第四版光盘下载
  18. 关于element upload上传时额外参数的问题
  19. 电子测量-不同电压波形对不同检波特性电压表的影响分析
  20. 【大数据开发必看】可视化BI神器---FineBI

热门文章

  1. 许晓斌_Maven实战(七)——常用Maven插件介绍(上)
  2. pytest -------- 生成测试报告+ 定制报告(allure生成报告)测试报告生成工具Allure 集成到pytest中【十三】
  3. HTMLTestRunner测试报告定制
  4. python下载收费视频_用Python下载知乎视频,非常实用
  5. 将数据源的数据格式化显示,加上金额符号
  6. x4提示你的产品已经被禁用_win10系统注册表已被管理员禁用的解决方法
  7. 如何玩转互联网金融大数据——征信
  8. 工业互联网大数据之数据管理与治理的简易理解
  9. 获得《软件方法》代金券的同学列表-漏了麻烦告知
  10. 用于Firefox的Google工具栏Beta 2发布