spring-data-redis版本升级2.2.2.RELEASE的问题

如题所述

第1个回答  2022-06-13
  最近在做安全整改的问题,要求将项目中的spring-data-redis版本升级到1.8.23.RELEASE,2.2.2.RELEASE还必须只指定的版本,低,高的版本还不行。不然不让你发布版本,
心想升个版本应该简单的。
于是打印了项目的maven依赖树,命令如下:

输出结果:

版本是2.0.10.RELEASE的。并且spring-boot-starter-data-redis引入的。是于是直接指定版本就是.

输出依赖树,版本确实更新到了2.2.2.RELEASE版本

启动项目,输出了如下错误,找不到相应的类。又是一个版本不兼容的问题

通过上面的依赖项指定是通过spring-boot-starter-data-redis引入的spring-data-redis.项目中使用spring-boot版本2.0.5.RELEASE.
那就直接升级到升级到2.2.2.RELEASE试试。

打印依赖树后.从结果看,版本变高了到2.2.3.RELEASE。还是不符合相关的版本要求。心想把项目启动试试再说。
启动后项目报如下错误:

  我去,又是个版本兼容性的问题。于是把springboot版本降低到2.2.1.RELEASE试试。不幸spring-data-redis输出的是2.2.1.RELEASE版本.
版本不符合,启动也报上面的错误。有点无语了,来来回回搞了1个多小时,加上明天要发布版本,使人容易产生焦虑,对自己能力怀疑。起来上个厕所,放松下。
  回来后,想到在maven仓库包的索引去找找看[ https://mvnrepository.com/] 输入spring-data-redis。找到2.2.2.RELEASE的版本,找到Compile Dependencies(编译依赖).看了一遍
找到最后看到redis.clients » jedis (optional)版本的要求是3.1.0,于是想到上面都没有注意到jedis的版本。回过头去查查
jedis的版本是2.9.3,乖乖难怪。于是升级到3.1.0版本。启动项目后,终于看到没有报错了。这个时候才舒口气。项目启动不报错,对程序猿是多么幸福的一件事呀。

  可是事情还没有完,通过上面操作项目启动了,可是spring-data-redis版本还是2.2.1的不符合要求。springboot在公司的仓库也没有匹配的版本。那就直接指定相应的版本2.2.2.RELEASE
试试,启动后项目一切正常。至此版本升级第一步终于完了。其他的功能需要在功能测试和使用中测试。

  提交版本测试,发布系统后报jedis的版本只能是2.9.3, 3.5.1, 3.3.0这几个版本。好吧,那就升级半到3.3.0版本吧。启动后也正常,发布后,测试相关的功能后没啥问题,就提交测试了。
废话很多,但是确实是相应的过程。在日常的工作中,经常遇到版本升级的问题,特别是最近各种框架爆出的漏洞后。这样的工作经常有发生。说实在话,这样的工作费力不讨好。哎,继续干活吧!!!!
相似回答