1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務時間:8:30-17:00
      你可能遇到了下面的問題
      關閉右側(cè)工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      SpringBoot如何打成war包在tomcat或wildfly下運行的方法

      這篇文章主要介紹了SpringBoot如何打成war包在tomcat或wildfly下運行的方法,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

      專注于為中小企業(yè)提供網(wǎng)站建設、成都網(wǎng)站制作服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)鶴壁免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千多家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。

      springboot默認的打包方式為jar包,jar包的有優(yōu)點是不需要更改的配置,并且內(nèi)嵌了tomcat,如果打成jar包直接可以丟到docker中運行測試。但是考慮到前端代碼只能打成war包,因此干脆也將后端代碼打成war包和前端的代碼一起放在tomcat容器中的webapps中運行就好了。

      SpringBoot打包形式

      默認情況下,創(chuàng)建的SpringBoot項目是按照jar包形式來進行打包的。同時,內(nèi)置了tomcat的容器。

      那么,此時如果想讓springboot打包成war包,并部署到wildfly等容器,該如何處理?

      下面將從創(chuàng)建項目開始逐一講解。

      創(chuàng)建項目

      創(chuàng)建項目沒有什么難點,使用idea工具創(chuàng)建一個簡單的maven項目即可,如果你的項目已經(jīng)是springboot項目,想要修改為war包形式,對照修改即可。

      修改pom.xml配置

      創(chuàng)建項目之后,修改pom.xml文件,添加parent標簽。

      
        org.springframework.boot
        spring-boot-starter-parent
        2.1.5.RELEASE
        
      

      如果原來是springboot項目,則已經(jīng)包含了,不用修改。

      pom.xml中設置打包方式為war。

      war

      添加或修改dependency配置,如下:

      
        
          org.springframework.boot
          spring-boot-starter
        
        
          org.springframework.boot
          spring-boot-starter-web
          
            
              org.springframework.boot
              spring-boot-starter-tomcat
            
          
        
        
          javax.servlet
          servlet-api
          2.5
        
        
          org.springframework.boot
          spring-boot-starter-test
          test
        
      

      其中在spring-boot-starter-web中需要排除tomcat的依賴。同時,添加servlet-api的依賴。注意這里添加的依賴為Servlet2.5。

      在build中使用如下插件進行打包。

      
        
          
            org.apache.maven.plugins
            maven-war-plugin
            2.6
            
              false
            
          
        
      

      啟動main方法

      如果已經(jīng)存在啟動的main方法,則讓main方法繼承SpringBootServletInitializer,并實現(xiàn)其方法即可。如果是新創(chuàng)建項目,則直接在頂級目錄創(chuàng)建SpringBootApp(啟動類),然后啟動diam如下。

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

      打包

      通過maven命令執(zhí)行package打包即可,在target目錄下即可生成war包。

      至于tomcat和wildfly的部署,都可將war包放置于對應的目錄下啟動服務即可。

      異常情況

      如果在啟動時報如類似如下異常(提示缺少web.xml):

      Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode)

      注意檢查pom文件打包插件和是否排除了tomcat的問題,核查上面的打包插件是否正確。

      問題的原因是:springboot項目中引用了依賴包spring-boot-starter-web。該包中引用的spring-boot-starter-tomcat里包含了tomcat嵌入式servlet容器,其不同版本實現(xiàn)的是不同的servlet版本規(guī)范。

      Servlet/JSP版本2.5/2.1支持Tomcat的版本為6.0.x,最低java版本為1.5。Servlet/JSP版本3.0/2.2支持Tomcat的版本為7.0.x,最低java版本為1.6。

      由于上面使用了Servlet2.5,當沒有web.xml文件時會出現(xiàn)上面的異常。

      解決方式一:當Servlet版本小于3時,使用創(chuàng)建/src/main/webapp/WEB-INF/web.xml文件。

      解決方式二:在pom.xml的build下添加maven-war-plugin插件。并設置failOnMissingWebXml為false。

      感謝你能夠認真閱讀完這篇文章,希望小編分享的“SpringBoot如何打成war包在tomcat或wildfly下運行的方法”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關知識等著你來學習!


      當前標題:SpringBoot如何打成war包在tomcat或wildfly下運行的方法
      網(wǎng)站路徑:http://www.ef60e0e.cn/article/gedpso.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        无极县| 衡阳县| 子洲县| 平阴县| 津南区| 龙川县| 疏勒县| 石棉县| 克拉玛依市| 固始县| 开远市| 社旗县| 寻甸| 荥经县| 罗田县| 樟树市| 安义县| 保康县| 资兴市| 汕尾市| 西华县| 榆中县| 运城市| 肃宁县| 通江县| 大悟县| 中山市| 华容县| 轮台县| 安岳县| 芜湖市| 石柱| 建始县| 靖江市| 句容市| 广德县| 红原县| 淮北市| 平顶山市| 绥宁县| 江津市|