一,pom文件修改:
- 聲明打包格式
<packaging>war</packaging>
- 聲明使用外部Tomcat
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
注:provided 的作用是項目打成war包時,此jar包不打包到lib文件夾下。
二,springboot啓動文件修改
- 繼承SpringBootServletInitializer。
- 重寫configure方法。
package com.zsm;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
@SpringBootApplication
@MapperScan("com.zsm.xdvideo.mapper")
public class XdvideoApplication extends SpringBootServletInitializer {
/**
* 導出war在外部tomcat使用時, 不能使用main函數運行, 需要配置此項
*/
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 注意這裏要指向原先用main方法執行的Application啓動類
return builder.sources(XdvideoApplication.class);
}
/**
* IDE運行時 運行此函數
* @param args
*/
public static void main(String[] args) {
SpringApplication.run(XdvideoApplication.class, args);
}
}
三,服務器項目訪問的注意點
- 訪問項目時,根目錄爲war包名稱,假如war包名稱爲“xdvideo.war”,訪問路徑爲:http://xx.xx.xxx.xx:8080/xdvideo.
- server.servlet.context-path=/xdvideo,此配置可以省略,如果配置,名稱只能是xdvideo,其他名稱在此配置無效。