SpringBoot?升級(jí)內(nèi)嵌Tomcat的操作示例
SpringBoot 更新 Tomcat
最近公司的一個(gè)老項(xiàng)目需要升級(jí)下Tomcat,由于這個(gè)項(xiàng)目我完全沒有參與,所以一開始我以為是一個(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)寫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下面查看,原來的Tomcat已經(jīng)沒有了。
3.通過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)成功!更新完成!
一覽全貌:
參考文章:【Spring Boot啟動(dòng)過程(六)之內(nèi)嵌Tomcat中StandardHost、StandardContext和StandardWrapper的啟動(dòng)教程詳解】
到此這篇關(guān)于SpringBoot 升級(jí)內(nèi)嵌Tomcat的文章就介紹到這了,更多相關(guān)SpringBoot 內(nèi)嵌Tomcat內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解tomcat設(shè)置默認(rèn)路徑致使項(xiàng)目url沖突解決方法
這篇文章主要介紹了詳解tomcat設(shè)置默認(rèn)路徑致使項(xiàng)目url沖突解決方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-01-01tomcat 幾種連接池配置代碼(包括tomcat5.0,tomcat5.5x,tomcat6.0)
Tomcat6.0連接池配置 實(shí)現(xiàn)代碼,大家可以參考下。2009-08-08深入了解tomcat中servlet的創(chuàng)建方式實(shí)現(xiàn)
這篇文章主要介紹了深入了解tomcat中servlet的創(chuàng)建方式實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10IDEA編輯器整合Apache Tomcat的詳細(xì)教程
這篇文章主要介紹了IDEA編輯器整合Apache Tomcat教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03tomcat何時(shí)寫回響應(yīng)數(shù)據(jù)報(bào)的詳析
這篇文章主要給大家介紹了關(guān)于tomcat是何時(shí)寫回響應(yīng)數(shù)據(jù)報(bào)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用tomcat具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04