SprinigBoot項目打成war包部署到tomcat

SprinigBoot項目打成war包部署到tomcat

剛開始使用springboot的時候,因爲不熟悉jar包部署,曾一度想把項目打包成war扔到tomcat容器中,折騰了一頓,啓動項目總是報錯,便放棄了。後面項目上線都是直接使用jar部署的方式。
昨天查看spring文檔的時候,無意中發現文檔中是有相關內容指導我們怎麼去把項目打成war包的,然後自己又試了一遍。結果成功了。今天記錄一下這個過程,下面附上最權威的官方文檔:
https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file

按照官方文檔三步走原則

1、啓動類(入口)繼承SpringBootServletInitializer並重寫configure方法。以便能夠支持servlet3.0,這樣在tomcat等外部servlet容器中就能夠得到配置並啓動了。
在這裏插入圖片描述

2、更改打包方式(maven管理模式下)
要想war包部署,肯定要打成war包的(●ˇ∀ˇ●)
在這裏插入圖片描述

3、更改內嵌容器的依賴sope爲provided(就是打成war包的時候排除掉)
這裏把默認的內嵌容器tomcat的scope設置爲provided,一併要排除的還有這個javax.servlet-api,因爲在tomcat等外部容器中已經有一個servlet-api了,再打包進去一個會有告警提示。
在這裏插入圖片描述

問題
問題1、把war包部署到tomcat7中啓動報錯,是因爲tomcat7中的el-api版本是2.2,缺少的類是在el-api 3.0中添加的。
解決辦法、直接換一個高版本的tomcat就好了。
在這裏插入圖片描述

小尾巴~~
只要有積累,就會有進步

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章