简介


最近写项目,发现springboot部署时,无法打成war方式扔给tomcat,运行。
苦苦,让我这个小白和度娘讨教了一上午,终于找到springboot打war的方式,记录一下。

springboot部署的方式


日常开发中springboot项目有两种方式进行部署:

  • 全部打包成一个jar 使用脚本或者java -jar 运行
  • 打包成一个war 扔给容器运行

部署方式一: jar(略过)

2. 修改启动类Application


新加@ServletComponentScan注解,并且继承SpringBootServletInitializer 。(规定莫问)

  1. @SpringBootApplication
  2. @ServletComponentScan//springboot打war注解
  3. public class AppStartup extends SpringBootServletInitializer {//继承SpringBootServletInitializer
  4. private static final Logger logger = LoggerFactory.getLogger(AppStartup.class);
  5. @Override//重写configure方法
  6. protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
  7. return application.sources(AppStartup.class);
  8. }
  9. public static void main(String[] args) {
  10. SpringApplication.run(AppStartup.class, args);
  11. System.out.println("Application is Started !!! ");
  12. logger.info("Application is Started !!! ");
  13. }
  14. }

3. 修改pom文件


新加打包成war的声明:

  1. <packaging>war</packaging>

4. 打war包


打war方式有多种,略过,不作为重点