SpringBoot的war包部署运行

文章目录

  • 概述
  • 必要的两点
  • 在windows上部署
  • 在linux上部署

概述

新建SpringBoot项目时使用war包,说明这是一个web项目,因此发布的时候我把它放在tomcat的webapps下面。
注意:这里要让SpringBoot内置tomcat失效

必要的两点

1.如下所示,先让内置tomcat失效
SpringBoot的war包部署运行_第1张图片
代码:


	org.springframework.boot
	spring-boot-starter-tomcat
	provided

2.让启动类继承SpringBootServletInitializer并重写方法
SpringBoot的war包部署运行_第2张图片
代码:

@SpringBootApplication
public class Application extends SpringBootServletInitializer{
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(Application.class);
    }
    public static void main(String[] args) {
	SpringApplication.run(Application.class, args);
    }
}

在windows上部署

先将项目打成war包:右击项目,先clean,后install,在target目录下生成war文件
SpringBoot的war包部署运行_第3张图片
将war文件放入在tomcat的webapps中,运行tomcat

在linux上部署

这里有一个需要注意的地方:
在windows上能运行的war包,在linux可能会有一下错误:
SpringBoot的war包部署运行_第4张图片
原因:找不到访问数据库的连接
解决方法:将pom文件中的MySQL依赖版本降低
SpringBoot的war包部署运行_第5张图片
然后和windows步骤一样,打包发布

你可能感兴趣的:(springboot)