最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot的war和jar包的使用詳解

 更新時(shí)間:2018年11月27日 10:04:42   作者:神牛003  
這篇文章主要介紹了springboot的war和jar包的使用詳解,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下

本篇和大家分享的是通過maven對(duì)springboot中打war包和jar包;war通常來說生成后直接放到tomcat的webapps下面就行,tomcat配置自動(dòng)解壓war,而jar一般通過命令行部署和啟動(dòng);

首先,來實(shí)戰(zhàn)怎么生成war包,主要來說可以分為3個(gè)步驟:

•程序入口改造
•排除springboot內(nèi)置tomcat
•spring-boot-maven-plugin插件中配置程序入口

程序入口改造,我們需要把springboot的main入口屏蔽掉,然后繼承SpringBootServletInitializer,并重寫configure方法,具體代碼如:

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

排除springboot內(nèi)置tomcat,默認(rèn)的情況下springboot是集成有內(nèi)置tomcat,因?yàn)閣ar需要發(fā)在我們服務(wù)器上的tomcat中,內(nèi)置的tomcat不需要,可以如下在maven中配置屏蔽:

 <!--war包-排除內(nèi)置tomcat-->
 <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-tomcat</artifactId>
 <scope>provided</scope>
 </dependency>

這里通過scope作用域?yàn)閜rovided來排除tomcat包,springboot框架中有包含tomcat包,scope默認(rèn)的作用于是compile,編譯,測(cè)試,運(yùn)行;

spring-boot-maven-plugin插件中配置程序入口,上面我們屏蔽了main入口,但是tomcat還是通過啟動(dòng)類作為入口,因此需要配置下啟動(dòng)mainClass:

<plugin>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-maven-plugin</artifactId>
 <!--war包-執(zhí)行程序入口 -->
 <configuration>
  <mainClass>com.platform.WebApplication</mainClass>
 </configuration>
 </plugin>

最后,把入口項(xiàng)目的packaging指定成war類型

 <packaging>war</packaging>

如上我們準(zhǔn)備工作就完成了,下面我們僅僅maven的package打包就行了,生成后如下截圖:

war包里面的內(nèi)容就是META-INF和WEB-INF部分,我們吧war上傳到linux上的tomcat的webapps下面,一般配置tomcat都會(huì)自動(dòng)解壓war包,我這里之前寫了一個(gè)api接口,運(yùn)行成功后正常在瀏覽器顯示:

再來,我們開始打jar包,步驟同樣和war差不多,不過是反向的去掉注釋的內(nèi)容:

•還原main入口(springboot模板生成的main,不做任何修改)
•去掉排除tomcat的配置(默認(rèn)就不沒有這個(gè)配置)
•使用maven-jar-plugin插件打包,指定程序入口和各種包含|排除項(xiàng)

還原不注釋main入口,主要針對(duì)剛才打war注釋了main入口操作,一般采用springboot模板默認(rèn)生成就行:

 public static void main(String[] args) throws ParseException, Exception {
 SpringApplication springApplication = new SpringApplication(WebApplication.class);
 springApplication.setBannerMode(Banner.Mode.OFF);
 springApplication.run(args);
 }

去掉排除tomcat的配置(默認(rèn)就不沒有這個(gè)配置),同樣這一步也是針對(duì)打war添加了排除tomcat的配置,直接刪除就行,刪除:

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

使用maven-jar-plugin插件打包,指定程序入口和各種包含|排除項(xiàng),這里通過jar插件配置一些項(xiàng),對(duì)配置文件和main入口指定:

<!--打jar包-->
 <plugin>
 <groupId>org.apache.maven.plugins</groupId>
 <artifactId>maven-jar-plugin</artifactId>
 <version>.</version>
 <configuration>
  <archive>
  <manifest>
   <!--<addClasspath>true</addClasspath>-->
   <!--<classpathPrefix>lib/</classpathPrefix>-->
   <!--main入口-->
   <mainClass>com.platform.WebApplication</mainClass>
  </manifest>
  </archive>
  <!--包含的配置文件-->
  <!--<includes>-->
  <!--<include>*.yml</include>-->
  <!--<include>*.properties</include>-->
  <!--<include>templates/**</include>-->
  <!--<include>static/**</include>-->
  <!--<include>*.xml</include>-->
  <!--</includes>-->
 </configuration>
 </plugin>

最后,把入口項(xiàng)目的packaging指定成war類型:

 <packaging>jar</packaging>

完成以上步驟后,能夠看到成功的jar包,如圖:

最后在linux上通過java -jar web-0.0.01.SN...jar 啟動(dòng)即可。

總結(jié)

以上所述是小編給大家介紹的springboot的war和jar包的使用詳解,希望對(duì)大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

相關(guān)文章

  • Spring boot工具類靜態(tài)屬性注入及多環(huán)境配置詳解

    Spring boot工具類靜態(tài)屬性注入及多環(huán)境配置詳解

    這篇文章主要為大家詳細(xì)介紹了Spring boot工具類靜態(tài)屬性注入,及多環(huán)境配置詳解,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Java編程環(huán)境搭建和變量基本使用圖文教程

    Java編程環(huán)境搭建和變量基本使用圖文教程

    這篇文章主要介紹了Java編程環(huán)境搭建和變量基本使用,結(jié)合圖文形式詳細(xì)分析了java編程語言環(huán)境搭建、配置、變量、注釋的基本使用方法,需要的朋友可以參考下
    2020-02-02
  • Java 批量刪除html中注釋內(nèi)容的方法

    Java 批量刪除html中注釋內(nèi)容的方法

    最近項(xiàng)目中有一個(gè)功能需要讀取外部html文本文件。但是有的html文件里面有大量的注釋,需要?jiǎng)h除其中的注釋在存儲(chǔ)
    2014-04-04
  • JAVA中AES對(duì)稱加密和解密過程

    JAVA中AES對(duì)稱加密和解密過程

    這篇文章主要為大家詳細(xì)介紹了JAVA中AES對(duì)稱加密和解密過程,感興趣的小伙伴們可以參考一下
    2016-08-08
  • Java中用enum結(jié)合testng實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)的方法示例

    Java中用enum結(jié)合testng實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)的方法示例

    TestNG數(shù)據(jù)驅(qū)動(dòng)提供的參數(shù)化讓我們?cè)跍y(cè)試項(xiàng)目可以靈活根據(jù)需求建立不同的dataprovider來提供數(shù)據(jù),而真正實(shí)現(xiàn)數(shù)據(jù),頁面,測(cè)試彼此獨(dú)立而又有機(jī)結(jié)合的可能性。 下面這篇文章主要給大家介紹了Java中用enum和testng做數(shù)據(jù)驅(qū)動(dòng)的方法示例,需要的朋友可以參考借鑒。
    2017-01-01
  • SpringBoot后端數(shù)據(jù)校驗(yàn)實(shí)戰(zhàn)操作指南

    SpringBoot后端數(shù)據(jù)校驗(yàn)實(shí)戰(zhàn)操作指南

    在項(xiàng)?開發(fā)中,對(duì)于前端提交的表單,后臺(tái)接?接收到表單數(shù)據(jù)后,為了保證程序的嚴(yán)謹(jǐn)性,通常后端會(huì)加?業(yè)務(wù)參數(shù)的合法校驗(yàn)操作來避免程序的?技術(shù)性?bug,這篇文章主要給大家介紹了關(guān)于SpringBoot后端數(shù)據(jù)校驗(yàn)的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • 一文詳解Spring?Boot可以同時(shí)處理多少請(qǐng)求

    一文詳解Spring?Boot可以同時(shí)處理多少請(qǐng)求

    SpringBoot是一個(gè)流行的Java開發(fā)框架,它被廣泛用于構(gòu)建Web應(yīng)用程序,但是,開發(fā)人員通常會(huì)擔(dān)心它的性能問題,特別是在高負(fù)載條件下,Spring?Boot能夠同時(shí)處理多少請(qǐng)求是一個(gè)重要的問題,在本文中,我們將討論SpringBoot的請(qǐng)求處理能力,并介紹如何提高性能
    2023-10-10
  • mybatis insert返回主鍵代碼實(shí)例

    mybatis insert返回主鍵代碼實(shí)例

    這篇文章主要介紹了mybatis insert返回主鍵代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Spring Boot Security 結(jié)合 JWT 實(shí)現(xiàn)無狀態(tài)的分布式API接口

    Spring Boot Security 結(jié)合 JWT 實(shí)現(xiàn)無狀態(tài)的分布式API接口

    JSON Web Token(縮寫 JWT)是目前最流行的跨域認(rèn)證解決方案。這篇文章主要介紹了Spring Boot Security 結(jié)合 JWT 實(shí)現(xiàn)無狀態(tài)的分布式API接口 ,需要的朋友可以參考下
    2019-04-04
  • springcloud ribbon 饑餓加載原理解析

    springcloud ribbon 饑餓加載原理解析

    這篇文章主要介紹了springcloud ribbon 饑餓加載原理解析,饑餓加載特別適用于對(duì)啟動(dòng)性能要求較高的場(chǎng)景,如系統(tǒng)啟動(dòng)初期就有高并發(fā)請(qǐng)求的情況,感興趣的朋友跟隨小編一起學(xué)習(xí)吧
    2024-04-04

最新評(píng)論

贺州市| 达州市| 长武县| 上高县| 嘉义县| 翁牛特旗| 雷波县| 环江| 当阳市| 呼图壁县| 宣威市| 法库县| 德化县| 宜城市| 宁阳县| 枣阳市| 涪陵区| 海淀区| 巢湖市| 沂源县| 孟州市| 贵港市| 宜城市| 海原县| 黑水县| 望城县| 英德市| 淮安市| 前郭尔| 永修县| 天峻县| 荣成市| 垫江县| 揭西县| 阿坝县| 卓尼县| 吴堡县| 巢湖市| 屏南县| 通辽市| 麟游县|