Spring Boot 默认将Web应用打包成jar形式,因为 spring-boot-starter-web 依赖包含了全栈Web开发模块,包含嵌入式Tomcat,Spring MVC。但有时候需要在外部的tomcat中运行spring boot 项目,此时需要将应用打包成war。修改项目的pom文件,<packaging>jar</packaging>
修改成<packaging>war</packaging>
。通过maven 命令 clean install
,打包完成后可以在target下看到打包好的war文件,文件的名称跟你项目的名称一样。如果需要修改war包的名称,则需要加上<finalName>
<build>
<!-- war包名称-->
<finalName>demo</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
SpringBootApplication 入口的改造:
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure( SpringApplicationBuilder applicatio