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 application) {
return application.sources(DemoApplication.class);
}
}
@Sp

本文介绍了如何将Spring Boot 2.x项目打包为war文件并部署到外部Tomcat服务器,以及设置不带项目路径的访问方式。方法包括将war命名为ROOT.war直接放入webapps目录,或者修改Tomcat的server.xml配置文件,通过docBase和path属性实现无项目路径访问。

1876

被折叠的 条评论
为什么被折叠?



