SpringBoot?升級(jí)內(nèi)嵌Tomcat的操作示例
SpringBoot 更新 Tomcat
最近公司的一個(gè)老項(xiàng)目需要升級(jí)下Tomcat,由于這個(gè)項(xiàng)目我完全沒(méi)有參與,所以一開(kāi)始我以為是一個(gè)老的Tomcat項(xiàng)目,升級(jí)它的Tomcat依賴或者是Tomcat容器鏡像,后面發(fā)現(xiàn)是一個(gè)SpringBoot項(xiàng)目,升級(jí)的是SpringBoot內(nèi)置的Tomcat。
這樣的升級(jí)可以保證項(xiàng)目最小變動(dòng)的情況下,將一個(gè)不安全版本的內(nèi)部依賴升級(jí)成安全版本的內(nèi)置依賴,還是比較有用的,因此在這里做一下記錄。
我這里采用的是屏蔽舊的依賴,然后手動(dòng)寫(xiě)dependency的方式:
1.首先找到在Maven依賴文件中找到SpringBoot-starter-web:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>如果你要升級(jí)的是其他的內(nèi)置依賴,可以先在右側(cè)Maven-Dependency中找到這個(gè)依賴,以確定該依賴是在哪個(gè)包下面的,然后進(jìn)行如下操作即可。

2.使用<exclusion>標(biāo)簽屏蔽內(nèi)置的舊的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>進(jìn)行到這一步驟,再次點(diǎn)到Maven-依賴中查看SpringBoot-Starter-Web下面查看,原來(lái)的Tomcat已經(jīng)沒(méi)有了。

3.通過(guò)dependency標(biāo)簽引入新的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>
新的依賴引入成功,啟動(dòng)一下項(xiàng)目試一下:

啟動(dòng)成功!更新完成!
一覽全貌:

到此這篇關(guān)于SpringBoot 升級(jí)內(nèi)嵌Tomcat的文章就介紹到這了,更多相關(guān)SpringBoot 內(nèi)嵌Tomcat內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot如何使用內(nèi)嵌Tomcat問(wèn)題
- Springboot內(nèi)嵌tomcat應(yīng)用原理深入分析
- 解決SpringBoot內(nèi)嵌Tomcat并發(fā)容量的問(wèn)題
- SpringBoot去除內(nèi)嵌tomcat的實(shí)現(xiàn)
- SpringBoot應(yīng)用部署到外置Tomcat的實(shí)現(xiàn)
- springboot使用外置tomcat啟動(dòng)方式
- SpringBoot應(yīng)用部署于外置Tomcat容器的方法
- SpringBoot的內(nèi)嵌和外置tomcat的實(shí)現(xiàn)方式
相關(guān)文章
詳解Tomcat多域名配置(多個(gè)項(xiàng)目共用80端口)
本篇文章主要介紹了Tomcat多域名配置(多個(gè)項(xiàng)目共用80端口),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
Tomcat端口僅允許本地訪問(wèn)設(shè)置的兩種方法
本文主要介紹了Tomcat端口僅允許本地訪問(wèn)設(shè)置的兩種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-05-05
Tomcat部署項(xiàng)目的幾種常見(jiàn)方式[親測(cè)]
這篇文章主要介紹了Tomcat部署項(xiàng)目的幾種常見(jiàn)方式,文中給大家提到了三種方法,除此之外還有Tomcat熱部署的方式 ,感興趣的朋友跟隨小編一起看看吧2018-11-11
實(shí)現(xiàn)將Web應(yīng)用部署到Tomcat根目錄的三種方法
本篇文章主要介紹了實(shí)現(xiàn)將Web應(yīng)用部署到Tomcat根目錄的三種方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
Java Tomcat 啟動(dòng)閃退問(wèn)題解決集
Tomcat 啟動(dòng)時(shí)出現(xiàn)黑屏一閃而過(guò)的現(xiàn)象原因有很多,這篇文章就詳細(xì)介紹了tomcat啟動(dòng)閃退問(wèn)題的一些解決方法,感興趣的同學(xué)可以仔細(xì)閱讀2023-03-03
Tomcat進(jìn)程占用CPU過(guò)高的解決方法
本文主要介紹了Tomcat進(jìn)程占用CPU過(guò)高的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
為eclipse和IDEA配置tomcat服務(wù)器的方法
這篇文章主要介紹了為eclipse和IDEA配置tomcat服務(wù)器的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-03-03
如何通過(guò)LambdaProbe實(shí)現(xiàn)監(jiān)控Tomcat
這篇文章主要介紹了如何通過(guò)LambdaProbe實(shí)現(xiàn)監(jiān)控Tomcat,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
兩種方法解決Tomcat控制臺(tái)輸出中文的亂碼問(wèn)題
本文主要給大家介紹了兩種方法解決Tomcat控制臺(tái)輸出中文的亂碼問(wèn)題,文章通過(guò)圖文結(jié)合的方式給大家講解的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2023-11-11

