相对于传统的Spring项目而言,SpringBoot官方推荐使用打jar包的形式,所以若是需要打war包需经过一些处理
1.修改pom.xml
首先要去除springboot内嵌的Tomcat服务,开发测试时记得注释掉
原生Tomcat依赖移除
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
thymeleaf 模板引擎依赖移除
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
然后需要将打包格式改为war
<groupId>cn.idwarf</groupId>
<artifactId>emodel</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
2.修改启动类
继承org.springframework.boot.web.servlet.support.SpringBootServletInitializer类,然后重写初始化方法
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(EmodelApplication.class);
}
3.打war包
工具栏view--Tool Windows--maven projects--Lifecycle--package--run maven build
如下图所示,框内提示即说明打包导出成功也提示了该war包的位置
打包完成后,放入Tomcat服务器下webapps目录下启动即可