首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

关于对 Tomcat 进行小版本升级的快速解决方案

编程知识
2024年08月23日 19:24

1、背景描述

原来的 Tomcat 在部署时,使用的是最新的版本 9.0.40 。

经过一段时间后,在原来的 Tomcat 版本中,发现存在漏洞。

因此,需要将旧版本(9.0.40)升级到没有漏洞的新版本(9.0.93)。

2、查看Tomcat的版本信息

image

如上图所示,在 tomcat 的 bin 目录下打开 cmd 窗口,运行 version.bat 程序,即可查看 tomcat 当前的版本信息(本例的版本为 9.0.40 )。

注意:如果是在 Linux 操作系统中,运行的是 version.sh 程序。

3、下载新版本的Tomcat

官网下载地址:https://archive.apache.org/dist/tomcat/

image

如上图所示,因为旧版本是 tomcat-9 大版本中的,因此选择下载的新版本也最好是 tomcat-9 大版本中的。

image

如上图所示,选择下载日期最新的小版本。

image

如上图所示,bin 目录存放的是已编译的程序,src 目录存放的是需要编译的源代码;没有特殊需求,选择已编译的程序即可。

image

如上图所示,选择下载 zip 格式(更加通用)的 tomcat 安装包。

4、备份旧版本的核心目录

4.1、复制备份bin文件夹

image

如上图所示,创建一个文件夹,用来复制备份旧版本 tomcat 的 bin 文件夹的内容。

4.2、复制备份lib文件夹

image

如上图所示,在备份文件夹中,复制备份旧版本 tomcat 的 lib 文件夹的内容。

5、替换新版本的核心目录

5.1、覆盖替换bin文件夹

image

如上图所示,用新版本 tomcat 的 bin 文件夹,覆盖替换旧版本 tomcat 的 bin 文件夹。

注意:因为原 bin 文件夹可能存在一些自定义的配置文件(例如 setenv.bat 或 setenv.sh ),所以推荐使用覆盖替换的操作,而不是直接把旧目录删除、然后放新目录。

5.2、覆盖替换lib文件夹

image

如上图所示,用新版本 tomcat 的 lib 文件夹,覆盖替换旧版本 tomcat 的 lib 文件夹。

注意:因为原 lib 文件夹可能存在一些自定义的 jar 包文件,所以推荐使用覆盖替换的操作,而不是直接把旧目录删除、然后放新目录。

6、确认Tomcat的新版本信息

image

如上图所示,在 tomcat 的 bin 目录下打开 cmd 窗口,运行 version.bat 程序,即可确认 tomcat 升级后的版本信息(本例的版本为 9.0.93 )。

注意:如果是在 Linux 操作系统中,运行的是 version.sh 程序。

本文参考

【1】【samirL】【升级tomcat版本方式】【博客园】【2020-09-14】

【2】【蜗牛计划中】【如何查看tomcat的版本信息】【百度经验】【2018-05-12】

From:https://www.cnblogs.com/Javaer1995/p/18358531
本文地址: http://shuzixingkong.net/article/1386
0评论
提交 加载更多评论
其他文章 线性dp:编辑距离
编辑距离 本题与力扣72.编辑距离题意一样,阅读完本文可以尝试leetcode72. 力扣题目链接 题目叙述 输入两个字符串a,b。输出从字符串a修改到字符串b时的编辑距离 输入 NOTV LOVER 输出 4 题目解释: 动态规划思路 这个问题显然是一个最优解问题,我们可以考虑动态规划的思路,那么
线性dp:编辑距离 线性dp:编辑距离 线性dp:编辑距离
一文讲清楚static关键字
static能修饰的地方 静态变量 静态变量: 又称为类变量,也就是说这个变量属于类的,类所有的实例都共享静态变量,可以直接通过类名来访问它;静态变量在内存中只存在一份。 实例变量: 每创建一个实例就会产生一个实例变量,它与该实例同生共死。 静态方法 静态方法在类加载的时候就存在了,它不依赖于任何实
平衡搜索树-AVL树 图文详解 (万字长文)
目录AVL树AVL树的概念AVL树节点的定义:AVL树的插入基本情况分析平衡因子对应的操作旋转操作分析需要旋转的情况结论4种旋转操方法与特征6种双旋平衡因子特征代码实现四种旋转实现插入操作实现树高度与是否平衡树判断实现其他实现插入验证BenchMark环境测试工具和方法测试结果: AVL树 AVL树
平衡搜索树-AVL树  图文详解  (万字长文) 平衡搜索树-AVL树  图文详解  (万字长文) 平衡搜索树-AVL树  图文详解  (万字长文)
Go 互斥锁 Mutex 源码分析 (一)
原创文章,欢迎转载,转载请注明出处,谢谢。 0. 前言 锁作为并发编程中的关键一环,是应该要深入掌握的。 1. 锁 1.1 示例 实现锁很简单,示例如下: var global int func main() { var mu sync.Mutex var wg sync.WaitGroup for
Go 互斥锁 Mutex 源码分析 (一) Go 互斥锁 Mutex 源码分析 (一)
Python的OpenCV转换图像大小
本文简要介绍了Python的OpenCV转换图像大小的方法,本文加载一个图像文件,将其大小转换为指定的宽度和高度,然后显示并保存转换后的图像。
全网最适合入门的面向对象编程教程:37 Python常用复合数据类型-列表和列表推导式
在Python中,列表是一个非常灵活且常用的复合数据类型。它允许存储多个项,这些项可以是任意的数据类型,包括其他列表。列表推导式是一种简洁的方式来创建和操作列表。
全网最适合入门的面向对象编程教程:37 Python常用复合数据类型-列表和列表推导式 全网最适合入门的面向对象编程教程:37 Python常用复合数据类型-列表和列表推导式 全网最适合入门的面向对象编程教程:37 Python常用复合数据类型-列表和列表推导式
推荐7款美观且功能强大的WPF UI库
前言 经常看到有小伙伴在DotNetGuide技术社区交流群里提问:WPF有什么好用或者好看的UI组件库推荐的?,今天大姚给大家分享7款开源、美观、功能强大、简单易用的WPF UI组件库。 WPF介绍 WPF 是一个强大的桌面应用程序框架,用于构建具有丰富用户界面的 Windows 应用。它提供了灵
推荐7款美观且功能强大的WPF UI库 推荐7款美观且功能强大的WPF UI库 推荐7款美观且功能强大的WPF UI库
004.MinIO-DirectPV分布式存储部署
MinIO部署介绍 部署概述 Kubernetes hostpath、local和本地静态配置都存在需要事先在node节点准备好可用的块存储或文件系统,例如对插入的硬盘,或者磁盘阵列做分区格式化,文件系统则需提前创建好Kubernetes即将利用的挂载目录,并且两种方法都会有亲和性限制,无法做到让K
004.MinIO-DirectPV分布式存储部署 004.MinIO-DirectPV分布式存储部署 004.MinIO-DirectPV分布式存储部署