一般情况下,我们在开发Spring Boot项目时,默认创建都是Jar包方式,目的是方便本地或服务器单独部署测试,但在特殊情况,比如我们想在一个Tomcat里面管理多个项目,这时候我们希望打包方式是传统的war包方式,那么这时候我们只需要对自身项目做微调整就可以快速打开出war包,具体如何做呢,参考步骤如下:
第一步,修改之前的pom.xml里面的jar方式,将jar修改为war,如果没有,新增此项即可,相关代码如下:
<groupId>com.qunhong</groupId>
<artifactId>CertManage</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 添加下面选项或修改jar为war -->
<packaging>war</packaging>
<name>CertManage</name>
<description>CertManage project for Spring Boot</description>
第二步,在pom.xml中新增Tomcat依赖,然后保存pom.xml,相关代码如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
第三步,打开Spring Boot 启动类,即xxxApplication文件,然后继承SpringBootServletInitializer,重写configure方法,相关完整代码如下:
@SpringBootApplication
@EnableScheduling
public class Application extends SpringBootServletInitializer{
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(Application.class);
}
}
注意:Application是我修改过的名称,默认文件名依照自身修改即可,另外 server.port= 和 server.servlet.context-path= 将失效,使用外部端口和项目名访问即可;
至此,项目方面我们就修改完了,然后采用maven打包即可,笔者使用的是eclipse,右键工程,执行maven install命令,如下图所示:
静等片刻,就可以在工程的target目录下看到war包,如下图:
最终,我们把打出的war包放入Tomcat 即可运行项目。
===================================================
特别提示:
若想了解或入门Spring Boot的朋友,笔者推荐以下平台的视频教程:
CSDN学院视频教程:Spring Boot入门初体验
51CTO学院视频教程:Spring Boot入门初体验