最近幾天用idea玩了一個springboot項目,但是在部署的時候遇到了一些麻煩,在網上搜索了一些資料,特意再次記錄,參考https://www.jianshu.com/p/baf624064540
步驟一
打開pom.xml查看打包方式(創建項目時選擇的打包方式)
<groupId>com.jiguanghudong.hotel</groupId> <artifactId>hotel</artifactId> <version>0.0.1-SNAPSHOT</version> <name>hotel</name> <packaging>war</packaging>
在pom.xml添加外部tomcat依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
步驟二












步驟三
創建一個Initializer類繼承自SpringBootServletInitializer,並重寫configure方法。且這個類應該與項目的Application在同一級目錄下

package com.jiguanghudong.hotel.hotel; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; public class Initializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application){ return application.sources(HotelApplication.class); } }
步驟四
maven打包

右鍵點擊運行

打包成功,默認war包路徑在項目文件夾的target文件內
部署在tomcat 的時候注意兩件事情,第一:如果不想訪問的時候有項目名稱,首先要刪除tomcat webaps文件夾下的ROOT文件,這樣當tomcat運行的時候項目解壓才會可以localhost:8080直接訪問
刪除掉ROOT

第二:修改conf 下文件server.xml文件 在Host 節點下 修改Context 標簽(如果沒有這個標簽則先添加),path="" docBase="項目路徑" 修改后的效果

