SpringBoot中maven項(xiàng)目打成war包部署在linux服務(wù)器上的方法
說(shuō)明:Spring Boot由于內(nèi)嵌了如Tomcat,Jetty和Undertow這樣的容器,也就是說(shuō)可以直接跑起來(lái),用不著再像Spring項(xiàng)目還需要外置的Tomcat等容器來(lái)進(jìn)行部署工作了,通過(guò)啟動(dòng)啟動(dòng)類就可以建立獨(dú)立的Spring應(yīng)用程序。Spring Boot部署在服務(wù)器上主要分為兩種方式:一是打成jar包發(fā)布,二是打成war包發(fā)布,第一種方式只需要在該服務(wù)器中運(yùn)行java -jar+部署項(xiàng)目的名稱就可以啟動(dòng)(不要忘了.jar后綴名),操作比較簡(jiǎn)單,第二種方式操作比較復(fù)雜一點(diǎn),并且是項(xiàng)目發(fā)布的常用打包方法,本編博客主要說(shuō)明打成war包的方式如何部署到服務(wù)器中。
一。pom.xml文件配置
1.第一步我們需要移除Spring Boot項(xiàng)目中內(nèi)置的tomcat容器,并配置外部的tomcat容器:
<!--移除內(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>
</exclusions>
</dependency>
<!--因配置外部TOMCAT 而配置-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>2.第二步添加servlet依賴:
<!--servlet API依賴-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>3.第三步將打包的方式改成war包:
<packaging>war</packaging>
4.第四步修改打包的項(xiàng)目名稱,使用build標(biāo)簽下的finalName標(biāo)簽修改:
<build>
<!--修改打包后項(xiàng)目名稱-->
<finalName>ROOT</finalName>
</build>二。Spring Boot啟動(dòng)類配置:
該步驟有兩種實(shí)現(xiàn)方式
1.第一種實(shí)現(xiàn)方式,啟動(dòng)類繼承SpringBootServletInitializer類并重寫configure方法:
@SpringBootApplication(exclude = WebAutoConfiguration.class)
public class GunsApplication extends SpringBootServletInitializer {
private final static Logger logger = LoggerFactory.getLogger(GunsApplication.class);
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 注意這里要指向原先用main方法執(zhí)行的Application啟動(dòng)類
return builder.sources(GunsApplication.class);
}
public static void main(String[] args) {
SpringApplication.run(GunsApplication.class, args);
logger.info("GunsApplication is success!");
}
}2.第二種實(shí)現(xiàn)方式,新建一個(gè)類繼承SpringBootServletInitializer類并重寫configure方法:(注意:該類要放在與啟動(dòng)類一致的目錄下)
public class GunsServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(GunsApplication.class);
}
}三。使用Maven工具打包:

四。發(fā)布到liunx服務(wù)器中:
連接到服務(wù)器,將打好的war包tomcat安裝目錄下的webapps,啟動(dòng)tomcat,自動(dòng)解析war包生成相應(yīng)的文件夾,打開瀏覽器輸入ip:(tomcat啟動(dòng)端口號(hào))就可以進(jìn)行訪問(wèn)了。(注意:在這個(gè)例子中我刪除了webapps目錄下原有的ROOT文件夾,并且把項(xiàng)目的名稱改成了ROOT,所以直接用ip+端口號(hào)就能直接訪問(wèn),但是如果不是這么操作的話,需要在端口號(hào)后面再加上項(xiàng)目的名稱即可訪問(wèn)。)

到此這篇關(guān)于SpringBoot中maven項(xiàng)目打成war包部署在liunx服務(wù)器上的方法的文章就介紹到這了,更多相關(guān)Springboot項(xiàng)目打war包部署到Linux內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot Java后端實(shí)現(xiàn)okhttp3超時(shí)設(shè)置的方法實(shí)例
Okhttp的使用沒(méi)有httpClient廣泛,網(wǎng)上關(guān)于Okhttp設(shè)置代理的方法很少,下面這篇文章主要給大家介紹了關(guān)于SpringBoot Java后端實(shí)現(xiàn)okhttp3超時(shí)設(shè)置的相關(guān)資料,需要的朋友可以參考下2021-10-10
Spring?Boot?+?Mybatis?Plus實(shí)現(xiàn)樹狀菜單的方法
這篇文章主要介紹了Spring?Boot?+?Mybatis?Plus實(shí)現(xiàn)樹狀菜單,包括實(shí)體類中添加子菜單列表和集合及構(gòu)建菜單樹的詳細(xì)代碼,代碼簡(jiǎn)單易懂,需要的朋友可以參考下2021-12-12
JavaWeb使用Session和Cookie實(shí)現(xiàn)登錄認(rèn)證
本篇文章主要介紹了JavaWeb使用Session和Cookie實(shí)現(xiàn)登錄認(rèn)證,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03
詳解mybatis 批量更新數(shù)據(jù)兩種方法效率對(duì)比
這篇文章主要介紹了詳解mybatis 批量更新數(shù)據(jù)兩種方法效率對(duì)比,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-02-02

