SpringBoot 升级内嵌Tomcat的操作示例
SpringBoot 更新 Tomcat
最近公司的一个老项目需要升级下Tomcat,由于这个项目我完全没有参与,所以一开始我以为是一个老的Tomcat项目,升级它的Tomcat依赖或者是Tomcat容器镜像,后面发现是一个SpringBoot项目,升级的是SpringBoot内置的Tomcat。
这样的升级可以保证项目最小变动的情况下,将一个不安全版本的内部依赖升级成安全版本的内置依赖,还是比较有用的,因此在这里做一下记录。
我这里采用的是屏蔽旧的依赖,然后手动写dependency的方式:
1.首先找到在Maven依赖文件中找到SpringBoot-starter-web:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
如果你要升级的是其他的内置依赖,可以先在右侧Maven-Dependency中找到这个依赖,以确定该依赖是在哪个包下面的,然后进行如下操作即可。
2.使用<exclusion>
标签屏蔽内置的旧的Tomcat依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-websocket</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-annotations-api</artifactId> </exclusion> </exclusions> </dependency>
进行到这一步骤,再次点到Maven-依赖中查看SpringBoot-Starter-Web下面查看,原来的Tomcat已经没有了。
3.通过dependency
标签引入新的Tomcat依赖
<properties> <java.version>1.8</java.version> <tomcat.version>9.0.63</tomcat.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-websocket</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-annotations-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> <version>${tomcat.version}</version> <exclusions> <exclusion> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-annotations-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-annotations-api</artifactId> <version>${tomcat.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> <version>${tomcat.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-websocket</artifactId> <version>${tomcat.version}</version> <exclusions> <exclusion> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies>
新的依赖引入成功,启动一下项目试一下:
启动成功!更新完成!
一览全貌:
参考文章:【Spring Boot启动过程(六)之内嵌Tomcat中StandardHost、StandardContext和StandardWrapper的启动教程详解】
到此这篇关于SpringBoot 升级内嵌Tomcat的文章就介绍到这了,更多相关SpringBoot 内嵌Tomcat内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Tomcat的安装与使用及Maven与Servlet的使用教程
这篇文章主要介绍了Tomcat的安装与使用及Maven与Servlet的使用教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-07-07让IIS6支持JSP的设置方法(IIS完美整合Tomcat)
这方面的教程网上很多,多数是copy之后又copy,以至于有些细节一直含糊不清,也导致我走了许多弯路,今天脚本之家小编特为大家整理了一些方法,经测试正常运行jsp2014-07-07maven项目远程部署&&使用tomcat配置数据库连接的方法
这篇文章主要介绍了maven项目远程部署&&使用tomcat配置数据库连接,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-07-07
最新评论