spring-boot實現web項目的運行

  通常,web項目是war包格式,但spring-boot官方推薦的是導出成jar包,但本人通過導出成jar來運行,嘗試了,運行不會粗問題。但是,由於webapp下的東西不好導入到jar包裏。後來通過配置pom中的<resources>發現可以將webapp下的內容導出到jar包,但是由於viewResolver的解析規則中webcontext中的root是部署的目錄下且以"/"開頭,故無法加載例如本地的資源,所以按照jar包導出始終會出現無法找到webapp下的內容(例如html資源)。


解決辦法:只有通過導出成war包,按照如下來執行:

java -jar xxx.war

pom配置僅需改爲<packaging>war</packaging>,然後配上main入口即可:

    <properties>
        <!-- The main class to start by executing java -jar -->
        <start-class>com.amazing.ApplicationMain</start-class>
    </properties>

此外,使用內嵌servlet容器必須給spring-boot-starter-tomcat和tomcat-embed-jasper加上<scope>provided</scope>


發佈了55 篇原創文章 · 獲贊 7 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章