SpringBoot應(yīng)用部署到外置Tomcat的實現(xiàn)
概述
SpringBoot讓我們實現(xiàn)了簡單、方便、快速的創(chuàng)建一個Spring Web項目,其約定優(yōu)于配置的模式讓我們少寫了大量的配置。內(nèi)置tomcat更是讓開發(fā)用得爽歪歪,但如果我們需要將SpringBoot項目發(fā)布到外置tomcat中,該如何操作呢?
一、修改Tomcat的打包方式
在pom.xml中將打包方式改成war
<packaging>war</packaging>
二、排除內(nèi)置tomcat依賴
在pom.xml里找到spring-boot-starter-web
依賴節(jié)點,在其中添加如下代碼:
<!--排除內(nèi)置tomcat依賴--> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions>
三、添加servlet-api的依賴
有兩種servlet可以選擇:
1.java servlet-api
<!--servlet-api依賴--> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <scope>provided</scope> </dependency>
2.tomcat-servlet
<dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-servlet-api</artifactId> <version>8.0.36</version> <scope>provided</scope> </dependency>
選擇其中一種就可以了。
四、添加一個servlet的初始化類,并重寫初始化方法
/** * @Description: 發(fā)布到tomcat需要添加一個servlet的初始化類 * @Author oyc * @Date 2020/4/23 12:40 下午 */ public class SpringBootJpaServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { //Application類,這里一定要指向原先用main方法執(zhí)行的Application啟動類 return application.sources(SpringbootJpaApplication.class); } }
五、其他設(shè)置于發(fā)布到tomcat
5.1 修改打成war包名稱
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.1.1</version> <configuration> <!-- 打成war包的名稱(默認(rèn)是項目名稱+版本.war) --> <warName>SpringBootJpa</warName> </configuration> </plugin>
5.2 打包
在項目根目錄下(即包含pom.xml的目錄),在命令行里輸入:
mvn clean package -Dmaven.test.skip=true
等待打包完成,把target目錄下生成的war包放到tomcat的webapps目錄下,啟動tomcat即自動完成解壓部署。
到此這篇關(guān)于SpringBoot應(yīng)用部署到外置Tomcat的實現(xiàn)的文章就介紹到這了,更多相關(guān)SpringBoot部署到外置Tomcat內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java將數(shù)組轉(zhuǎn)換成字符串的四種方法總結(jié)
這篇文章主要給大家介紹了關(guān)于Java將數(shù)組轉(zhuǎn)換成字符串的四種方法,每種方法都有其適用的場景和優(yōu)缺點,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-12-12解決@Async(“taskExecutor“)異步線程報錯問題
這篇文章主要介紹了解決@Async(“taskExecutor“)異步線程報錯問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-08-08Java基于虹軟實現(xiàn)人臉識別、人臉比對、活性檢測等
本文主要介紹了Java基于虹軟實現(xiàn)人臉識別、人臉比對、活性檢測等,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-02-02淺談Java分布式架構(gòu)下如何實現(xiàn)分布式鎖
這篇文章主要介紹了淺談Java分布式架構(gòu)下如何實現(xiàn)分布式鎖,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07Spring中@DependsOn注解的作用及實現(xiàn)原理解析
這篇文章主要介紹了Spring中@DependsOn注解的作用及實現(xiàn)原理解析,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03微信公眾帳號開發(fā)-自定義菜單的創(chuàng)建及菜單事件響應(yīng)的實例
本篇文章主要介紹了微信公眾帳號開發(fā)-自定義菜單的創(chuàng)建及菜單事件響應(yīng)的實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-12-12springboot實戰(zhàn)權(quán)限管理功能圖文步驟附含源碼
這篇文章主要為大家介紹了springboot實戰(zhàn)權(quán)限管理功能圖文步驟及示例源碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06