欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot項目打包發(fā)布部署的過程及jar和war的區(qū)別

 更新時間:2022年11月29日 09:16:53   作者:搖滾俠  
Spring Boot使用了內(nèi)嵌容器,因此它的部署方式也變得非常簡單靈活,可以將Spring Boot項目打包成JAR包來獨(dú)立運(yùn)行,Spring Boot項目既可以生成WAR包發(fā)布,也可以生成JAR包發(fā)布,那么它們有什么區(qū)別呢

簡介:

1.Spring Boot使用了內(nèi)嵌容器,因此它的部署方式也變得非常簡單靈活,可以將Spring Boot項目打包成JAR包來獨(dú)立運(yùn)行,也可以打包成WAR包部署到Tomcat容器中運(yùn)行,如果涉及大規(guī)模的部署,Jenkins成為最佳選擇之一。

生成jar包

Maven默認(rèn)會將項目打成JAR包,也可以在pom.xml文件中指定打包方式。配置示例如下:

生成war包

Spring Boot項目既可以生成WAR包發(fā)布,也可以生成JAR包發(fā)布。那么它們有什么區(qū)別呢?
JAR包:通過內(nèi)置Tomcat運(yùn)行,不需要額外安裝Tomcat。如果需修改內(nèi)置Tomcat的配置,只需要在Spring Boot的配置文件中配置即可。內(nèi)置Tomcat沒有自己的日志輸出,全靠JAR包應(yīng)用輸出日志,但是部署簡單方便,適合快速部署。
WAR包:傳統(tǒng)的應(yīng)用交付方式,需要安裝Tomcat,然后將WAR包放到webapps目錄下運(yùn)行,這樣可以靈活選擇Tomcat版本,也可以直接修改Tomcat的配置,同時有自己的Tomcat日志輸出,可以靈活配置安全策略。WAR包相對JAR包來說沒那么快速方便。

更改配置

排除tomcat

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>

在上面的示例中,將Tomcat組件的scope屬性設(shè)置為provided,這樣在打包產(chǎn)生的WAR中就不會包含Tomcat相關(guān)的JAR。

注冊啟動類

@SpringBootApplication
public class PackageApplication extends SpringBootServletInitializer {
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
                return application.sources(PackageApplication.class);
        }
        public static void main(String[] args) {
                SpringApplication.run(PackageApplication.class, args);
        }
}

打包命令

在項目根目錄下,在控制臺執(zhí)行如下命令:
mvn clean package -Dmaven.test.skip=true
1)mvn clean package其實是兩條命令,mvn clean用于清除項目target目錄下的文件,mvn package是打包命令。兩個命令可以一起執(zhí)行。
2)-Dmaven.test.skip=true:排除測試代碼后進(jìn)行打包。
將打包好的WAR包復(fù)制到Tomcat服務(wù)器中的webapps目錄下啟動即可。

啟動運(yùn)行

到此這篇關(guān)于springboot項目的打包發(fā)布部署,jar和war的區(qū)別的文章就介紹到這了,更多相關(guān)springboot部署jar和war的區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot使用hutool操作FTP的詳細(xì)過程

    SpringBoot使用hutool操作FTP的詳細(xì)過程

    在使用SpringBoot結(jié)合hutool操作FTP時,遇到防火墻導(dǎo)致上傳文件大小為0kb的問題,通過設(shè)置FTP為被動模式解決,本文詳細(xì)解析了FTP的主動模式和被動模式的工作原理、安全性及適用場景,幫助理解FTP的連接方式和解決網(wǎng)絡(luò)限制問題
    2024-09-09
  • Java操作XML轉(zhuǎn)JSON數(shù)據(jù)格式詳細(xì)代碼實例

    Java操作XML轉(zhuǎn)JSON數(shù)據(jù)格式詳細(xì)代碼實例

    在Java中我們可以使用一些現(xiàn)成的庫來實現(xiàn)XML到JSON的轉(zhuǎn)換,下面這篇文章主要給大家介紹了關(guān)于Java操作XML轉(zhuǎn)JSON數(shù)據(jù)格式的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-04-04
  • Echarts+SpringMvc顯示后臺實時數(shù)據(jù)

    Echarts+SpringMvc顯示后臺實時數(shù)據(jù)

    這篇文章主要為大家詳細(xì)介紹了Echarts+SpringMvc顯示后臺實時數(shù)據(jù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • Spring整合MyBatis圖示過程解析

    Spring整合MyBatis圖示過程解析

    這篇文章主要介紹了Spring整合MyBatis圖示過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • IDEA使用SequenceDiagram插件繪制時序圖的方法

    IDEA使用SequenceDiagram插件繪制時序圖的方法

    這篇文章主要介紹了IDEA使用SequenceDiagram插件繪制時序圖的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • POI讀取excel簡介_動力節(jié)點(diǎn)Java學(xué)院整理

    POI讀取excel簡介_動力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章主要介紹了POI讀取excel簡介,詳細(xì)的介紹了什么是Apache POI和組件,有興趣的可以了解了解一下
    2017-08-08
  • idea運(yùn)行vue項目設(shè)置自定義瀏覽器方式

    idea運(yùn)行vue項目設(shè)置自定義瀏覽器方式

    這篇文章主要介紹了idea運(yùn)行vue項目設(shè)置自定義瀏覽器方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Java?Selenide?簡介與用法

    Java?Selenide?簡介與用法

    Selenium?是目前用的最廣泛的Web?UI?自動化測試框架,本文給大家介紹下Java?Selenide使用,感興趣的朋友一起看看吧
    2022-01-01
  • Java pdu短信解碼全面解析

    Java pdu短信解碼全面解析

    本文是根據(jù)python的方法改寫的pdu短信解碼,非常不錯,代碼簡單易懂具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-10-10
  • IDEA報錯java.lang.OutOfMemoryError:Java?heap?space的解決辦法

    IDEA報錯java.lang.OutOfMemoryError:Java?heap?space的解決辦法

    這篇文章主要給大家介紹了關(guān)于IDEA報錯java.lang.OutOfMemoryError:Java?heap?space的解決辦法,出現(xiàn)這個問題的主要原因是項目運(yùn)行時的堆內(nèi)存不足引起的報錯,需要的朋友可以參考下
    2024-02-02

最新評論