springboot项目版本升级
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的参数等
至此,完成了七宗罪,基本上可以解决编译问题了,后面就是先起本地,再打包上测试环境了,开始。
- 本地起的时候报了很多的循环依赖,确实是有循环依赖问题,解决方法一个是加Lazy,一个是加配置spring.main. allow-circular-references:true,个人比较倾向于加lazy吧,毕竟熟一点。
- Quartz报找不到数据源,查了一下高版本的jobStore.class需要换一下:org.quartz.impl.jdbcjobstore.JobStoreTX -> org.springframework.scheduling.quartz.LocalDataSourceJobStore
- 报错Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException。网上说的加一个spring.mvc.pathmatch.matching-strategy: ANT_PATH_MATCHER,确实好使但是还没明白什么意思,后面还得研究下
- Swagger虽然升级了但是访问不通,这个还挺棘手因为网上也没查到什么建议:我看依赖和启动项,swagger包确实是进去了的,盲猜是因为访问路径改了,可以网上找了几个路径还真就访问不了。没办法看看源码吧,毕竟swagger的之前看过不是很困难。找到了springfox.documentation.swagger-ui.base-url配置项可以配置访问的context路径,然后最后路径是swagger-ui。好吧,配置一下springfox.documentation.swagger-ui.base-url=swagger,然后访问路径就成了swagger/swagger-ui。我们用这个当的docker pod的探针,所以比较关心。
- FeignClient的写法变了。我们有动态的调用不同IP的业务,类似于中心服务调用各个地区分区的节点这样。秉承着能用就行的方针,就将feignClient的url设置为’http://’,然后通过path参数设置的IP和端口。现在这么设置不行了,比如原本调用http://1.1.1.1:8080,现在变成了http://null//1.1.1.1:8080。最后查了下应该这么写,参数里加一个URI参数,参数里放ip端口就可以了。
- 貌似还有其他的问题,忘了。
springboot项目版本升级相关推荐
- 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版本时升级 ...
- 创建一个SpringBoot项目
Spring的诞生是为了简化JAVA程序的开发的 快速开发Spring而诞生的 SpringBoot为了快速开发Spring而诞生的一个框架 1)什么是SpringBoot?为什么要学它?(重要) S ...
- Dockerfile springboot项目拿走即用,将yml配置文件从外部挂入容器
Dockerfile 将springboot项目jar包打成镜像,并将yml配置文件外挂. # 以一个镜像为基础,在其上进行定制.就像我们之前运行了一个 nginx 镜像的容器,再进行修改一样,基础镜 ...
- SpringBoot项目使用nacos,kotlin使用nacos,java项目使用nacos,gradle项目使用nacos,maven项目使用nacos
SpringBoot项目使用nacos kotlin demo见Gitte 一.引入依赖 提示:这里推荐使用2.2.3版本,springboot与nacos的依赖需要版本相同,否则会报错. maven ...
- win10安装docker并结合Idea2018.1部署springboot项目
一.准备工作 1..工具:win10,idea2018,maven3.5,jdk8 二.win10安装docker 1.win10安装docker:http://www.runoob.com/dock ...
- 关于SpringBoot项目通过jar包启动之后无法读取项目根路径静态资源
前言:这个是昨天晚上在部署一个项目的时候发现的,在此记录一下 关于SpringBoot项目通过jar包启动之后无法读取项目根路径静态资源 问题描述 在部署了一个项目之后,打开项目页面进行测试,发现有一 ...
- 使用idea创建springboot项目并打成war包发布到weblogic上...
部署tomcat也是类似的,但是需要注意项目配置的路径,或者直接将项目放到webapp的ROOT目录下. 使用工具:intelliJ IDEA2016.3, jdk1.8 ,weblogic12 一 ...
- SpringBoot项目打包war部署到服务器去掉项目名所遇到的坑
个人资源与分享网站:http://xiaocaoshare.com/ 前言 将SpringBoot项目打成war主要是方便自己后期维护,也就是每次更新网站的时候不需要打成jar包,主要是文件太大,复制 ...
- 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
一个用于构建和推送Docker镜像的Maven插件. 使用Maven插件构建Docker镜像,将Docker镜像push到DockerHub上,或者私有仓库,上一篇文章是手写Dockerfile,这篇 ...
- Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo
Docker 部署SpringBoot项目整合 Redis 镜像做访问计数Demo 最终效果如下 大概就几个步骤 1.安装 Docker CE 2.运行 Redis 镜像 3.Java 环境准备 4. ...
最新文章
- Wireshark抓包与常见问题解决
- html5子页面无法弹出,弹出子页面,兼容ie
- anaconda和python有什么不一样_黄山毛峰的味道为什么会不一样?
- ASP.NET MVC5(一):ASP.NET MVC概览
- qt中设置控件不能使用
- Flutter中嵌入Android 原生TextView
- nutwk的maven中央仓库及配置
- 一个action类中写多个方法需要继承MappingDispatchAction
- 美国亚马逊账号被锁定之后
- iframe框根据内容自适应高度
- 深度学习之目标检测 第3章 传统目标检测方法基本流程
- 怎样建设智慧公厕综合信息管理系统?如何让智慧公厕实现综合信息管理功能?@中期科技ZONTREE智慧厕所
- php mysql上机题_基于PHP+MySQL的题库管理系统
- ajax点击事件click触发两次,jQuery点击click触发两次事件解决办法
- TypeError: empty() received an invalid combination of arguments
- 如何有效运维管理光伏电站?
- 分享美团、字节、腾讯,java从入门到精通第四版光盘下载
- 关于element upload上传时额外参数的问题
- 电子测量-不同电压波形对不同检波特性电压表的影响分析
- 【大数据开发必看】可视化BI神器---FineBI
热门文章
- 许晓斌_Maven实战(七)——常用Maven插件介绍(上)
- pytest -------- 生成测试报告+ 定制报告(allure生成报告)测试报告生成工具Allure 集成到pytest中【十三】
- HTMLTestRunner测试报告定制
- python下载收费视频_用Python下载知乎视频,非常实用
- 将数据源的数据格式化显示,加上金额符号
- x4提示你的产品已经被禁用_win10系统注册表已被管理员禁用的解决方法
- 如何玩转互联网金融大数据——征信
- 工业互联网大数据之数据管理与治理的简易理解
- 获得《软件方法》代金券的同学列表-漏了麻烦告知
- 用于Firefox的Google工具栏Beta 2发布