jar包版本漏洞,SpringBoot升级相关依赖方法 您所在的位置:网站首页 java怎么更新项目 jar包版本漏洞,SpringBoot升级相关依赖方法

jar包版本漏洞,SpringBoot升级相关依赖方法

2023-12-15 05:06| 来源: 网络整理| 查看: 265

1. 背景

对于 SpringBoot 使用 Maven 构建项目做依赖管理大致分下面两种情况。 (1)以 spring-boot-starter-parent 作为父模块,属于默认的方式 (2)不用 spring-boot-starter-parent 作为parent,而是dependencyManagement 引用 spring-boot-dependencies构建的父子工程模块

2. 情况一:默认方式

下面以升级SpringBoot中的Tomcat为例,进行说明。

升级SpringBoot的tomcat 方式一(不推荐)

我们可以在引用web启动器spring-boot-starter-web的地方,排除这个spring-boot-stater-tomcat子启动器。然后在依赖中从新加入自己想要的内嵌版本,这样就可以实现更换SpringBoot内嵌Tomcat版本的目的了。注意这并不是一种推荐的解决方案,这其实是一种不明就里的解决方案。真正的省时省力的还是方法二。

方式二(推荐)

我们直接在定义版本号的地方声明Tomcat的版本号就可以,然后刷新依赖,就会将Tomcat的版本自动升级到想要的版本。

那么版本号在哪里定义的呢?注意如果你的项目是分布式项目,那么肯定有个最外层的parent项目,这个项目里通常会去定义各个子项目使用的各种组件的版本号,我们都是将版本号写在pom文件中的properties属性中,这样就可以统一管理组件的版本号了。如果你是单一项目,那么肯定就在你当前项目中去的pom文件中寻找这个版本号,有可能是在properties中定义这个版本,也有可能是在引入依赖的地方直接声明的。

1.8 Hoxton.SR9 9.0.43 3. 情况二:父子工程模块中

项目中使用了 import,将 spring-boot-dependencies 添加到自己的 dependencyManagement 片段,如下:

org.springframework.boot spring-boot-dependencies ${spring.boot.version} pom import

这种情况下修改版本,则需要在 pom 文件中重新定义要修改版本依赖的GAV,而不是覆盖属性版本信息

4. 总结

通过这个组件升级了解到了,我们升级内嵌的组件的版本号时,无需像方式一那样去排除内嵌的组件,然后再重新加入依赖,这样做其实是个笨方法,可以直接定义组件的版本号,这样就可以达到升级组件版本的目的了,不仅Tomcat是这样,其他组件也是适用的。

原文链接:https://blog.csdn.net/m0_46897923/article/details/114901174



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有