SpringBoot?升級內(nèi)嵌Tomcat的操作示例
SpringBoot 更新 Tomcat
最近公司的一個老項目需要升級下Tomcat,由于這個項目我完全沒有參與,所以一開始我以為是一個老的Tomcat項目,升級它的Tomcat依賴或者是Tomcat容器鏡像,后面發(fā)現(xiàn)是一個SpringBoot項目,升級的是SpringBoot內(nèi)置的Tomcat。
這樣的升級可以保證項目最小變動的情況下,將一個不安全版本的內(nèi)部依賴升級成安全版本的內(nèi)置依賴,還是比較有用的,因此在這里做一下記錄。
我這里采用的是屏蔽舊的依賴,然后手動寫dependency的方式:
1.首先找到在Maven依賴文件中找到SpringBoot-starter-web:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
如果你要升級的是其他的內(nèi)置依賴,可以先在右側(cè)Maven-Dependency中找到這個依賴,以確定該依賴是在哪個包下面的,然后進行如下操作即可。
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>
進行到這一步驟,再次點到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>
新的依賴引入成功,啟動一下項目試一下:
啟動成功!更新完成!
一覽全貌:
參考文章:【Spring Boot啟動過程(六)之內(nèi)嵌Tomcat中StandardHost、StandardContext和StandardWrapper的啟動教程詳解】
到此這篇關(guān)于SpringBoot 升級內(nèi)嵌Tomcat的文章就介紹到這了,更多相關(guān)SpringBoot 內(nèi)嵌Tomcat內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解tomcat設(shè)置默認(rèn)路徑致使項目url沖突解決方法
這篇文章主要介紹了詳解tomcat設(shè)置默認(rèn)路徑致使項目url沖突解決方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-01-01tomcat 幾種連接池配置代碼(包括tomcat5.0,tomcat5.5x,tomcat6.0)
Tomcat6.0連接池配置 實現(xiàn)代碼,大家可以參考下。2009-08-08深入了解tomcat中servlet的創(chuàng)建方式實現(xiàn)
這篇文章主要介紹了深入了解tomcat中servlet的創(chuàng)建方式實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10tomcat何時寫回響應(yīng)數(shù)據(jù)報的詳析
這篇文章主要給大家介紹了關(guān)于tomcat是何時寫回響應(yīng)數(shù)據(jù)報的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用tomcat具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04