欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

怎么把SpringBoot打成war包在tomcat或wildfly下運(yùn)行

本篇內(nèi)容主要講解“怎么把SpringBoot打成war包在tomcat或wildfly下運(yùn)行”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“怎么把SpringBoot打成war包在tomcat或wildfly下運(yùn)行”吧!

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了張掖免費(fèi)建站歡迎大家使用!

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

SpringBoot打包形式

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

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

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

創(chuàng)建項(xiàng)目

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

修改pom.xml配置

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

<parent>  <groupId>org.springframework.boot</groupId>  <artifactId>spring-boot-starter-parent</artifactId>  <version>2.1.5.RELEASE</version>  <relativePath/></parent>

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

pom.xml中設(shè)置打包方式為war。

<packaging>war</packaging>

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

<dependencies>  <dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter</artifactId>  </dependency>  <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>  <dependency>    <groupId>javax.servlet</groupId>    <artifactId>servlet-api</artifactId>    <version>2.5</version>  </dependency>  <dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-test</artifactId>    <scope>test</scope>  </dependency></dependencies>

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

在build中使用如下插件進(jìn)行打包。

<build>  <plugins>    <plugin>      <groupId>org.apache.maven.plugins</groupId>      <artifactId>maven-war-plugin</artifactId>      <version>2.6</version>      <configuration>        <failOnMissingWebXml>false</failOnMissingWebXml>      </configuration>    </plugin>  </plugins></build>

啟動(dòng)main方法

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

@SpringBootApplicationpublic 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包放置于對(duì)應(yīng)的目錄下啟動(dòng)服務(wù)即可。

異常情況

如果在啟動(dòng)時(shí)報(bào)如類似如下異常(提示缺少web.xml):

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

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

問題的原因是:springboot項(xiàng)目中引用了依賴包spring-boot-starter-web。該包中引用的spring-boot-starter-tomcat里包含了tomcat嵌入式servlet容器,其不同版本實(shí)現(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,當(dāng)沒有web.xml文件時(shí)會(huì)出現(xiàn)上面的異常。

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

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

到此,相信大家對(duì)“怎么把SpringBoot打成war包在tomcat或wildfly下運(yùn)行”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

當(dāng)前名稱:怎么把SpringBoot打成war包在tomcat或wildfly下運(yùn)行
文章地址:http://aaarwkj.com/article28/ggpijp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、網(wǎng)站建設(shè)搜索引擎優(yōu)化、網(wǎng)站營(yíng)銷、定制開發(fā)自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
av色狠狠一区二区三区| 欧美日韩一区二区综合在线视频| 欧美黄片在线播放视频| 蜜臀午夜精品视频在线观看| 欧美日韩国产天天干| 亚洲熟妇av一区二区| 人妻的秘密一区二区三区| 少妇互射视频免费视频| 亚洲精品乱码在线播放| 亚洲av成人精品网站推荐| av影片在线观看不卡| 久久精品国产亚洲av超一| 亚洲精品视频久久偷拍| 丝袜美腿亚洲综合一区| 91人妻精品丰满少妇区| 亚洲一区二区三区香蕉不卡| 最新日韩中文字幕在线播放| 欧美亚洲另类日韩综合网| 中文字幕国产精品专区| 国产精品国产三级农村av| 国产精品毛片一区二区三| 人妻在线中文字幕一区| 亚洲国产黄片在线播放| 国产一区二区黄色录像| 亚洲精品在线观看毛片| 少妇高潮一区二区三区99| 日韩网激情视频在线观看| 午夜理论片在线观看有码| 在线激情视频一区二区| 亚洲一区二区三区日本在线| 国产色综合一区二区| 日韩欧美麻豆不卡一区二区| 91欧美日韩中在线视频| 91黄色国产在线播放| av在线亚洲网站区一| 日韩高清在线亚洲专区不卡| 岛国高清乱码中文字幕| 四虎在线观看精品一区| 免费又色又爽无遮挡网站| 欧美午夜视频一区二区福利| 亚洲一区二区三区 码|