Spring Boot war 包

巧了我就是萌 提交于 2020-12-06 04:09:43

使用Spring Boot开发的项目部署前,有时候会选择打成war包,不使用jar包的方式。而且我也发现了很多关于项目打war包的文章,但是在我学习Spring Boot 的时候看到了官方的Demo关于web-jspSpring Boot#spring-boot-samples/spring-boot-sample-web-jsp配置的pom.xml非常的简洁,引发了我的尝试。

演示环境

  • JDK 1.8
  • Spring Boot 2.0.6.RELEASE
  • Maven 3.5.4
  • IntelliJ IDEA 2018.2.1 (Community Edition)

对项目进行配置

修改pom.xml文件

要想把项目打成war包肯定少不了对pom.xmlpackaging的修改。

<packaging>war</packaging>

然后接着添加tomcat的依赖,然后设置scope

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-tomcat</artifactId>
	<scope>provided</scope>
</dependency>

修改启动类

项目原有的启动类需要继承SpringBootServletInitializer重写里面的configure方法。

package xin.jerome.demo;

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
public class DemoApplication extends SpringBootServletInitializer {

	@Override
	protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
		return application.sources(DemoApplication.class);
	}

	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}
}

到这里我们已经对我们的项目已经修改完成了。

打包、部署和测试

打包和部署

打包使用Maven命令mvn clean package就会在项目的target目录下生成对应的xxx.war文件,然后直接将war文件放到tomcat里面运行就可以了。

打包并运行war文件的方式有很多,这里就不多阐述。

测试(调试)

根据上面的所述的步骤,我们已经能够轻松的将一个Spring Boot项目打成war并且部署到tomcat里面。但是经过这样配置后,在开发调试的时候并不是很方便。这时我们只需要把tomcat依赖的<scope>provided</scope>这段代码给注释掉,重新导入依赖即可。就可以直接在IntelliJ IDEA里面运行调试了。

总结

经过上面的一番操作后,会使我们对Spring Boot的开发更加顺手。正所谓处处留心皆学问,我也希望自己在这条路上走得更远。

原文链接:Spring Boot打成war包

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!