springboot默认打包成jar,如果想打包成war,则需要做以下三步。
1.修改pom.xml文件
a.将jar改成war
11 <groupId>com.test</groupId> 22 <artifactId>01-springboot-HelloWorld</artifactId> 33 <version>0.0.1-SNAPSHOT</version> 44 <packaging>war</packaging>
b.移除spring-boot-starter-web中嵌入式tomcat插件
1 1 <!-- Add typical dependencies for a web application --> 2 2 <dependency> 3 3 <groupId>org.springframework.boot</groupId> 4 4 <artifactId>spring-boot-starter-web</artifactId> 5 5 <!-- 移除嵌入式tomcat插件 --> 6 6 <exclusions> 7 7 <exclusion> 8 8 <groupId>org.springframework.boot</groupId> 9 9 <artifactId>spring-boot-starter-tomcat</artifactId> 1010 </exclusion> 1111 </exclusions> 1212 </dependency>
c.增加servlet引用
11 <dependency> 22 <groupId>javax.servlet</groupId> 33 <artifactId>javax.servlet-api</artifactId> 44 <scope>provided</scope> 55 </dependency>
2.增加启动类
1 1 import org.springframework.boot.builder.SpringApplicationBuilder; 2 2 import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; 3 3 4 4 5 5 /** 6 6 * 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法 7 7 */ 8 8 public class SpringBootStartApplication extends SpringBootServletInitializer { 9 9 1010 @Override 1111 protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { 1212 // 注意这里要指向原先用main方法执行的App启动类 1313 return builder.sources(App.class); 1414 } 1515 1616 }
3.使用maven打包
maven打包命令:mvn clean install
本项目的结构图如下:
