Springboot部署war包

1、配置依赖

  1. <!-- springboot打包war部署到tomcat中需要的配置-->
  2. <dependency>
  3. <groupId>org.springframework.boot</groupId>
  4. <artifactId>spring-boot-starter-tomcat</artifactId>
  5. <scope>provided</scope> <!-- 主要是这个作用域 -->
  6. </dependency>

2、在springboot主程序中配置configure方法

  1. // springboot打包war部署到tomcat中需要的配置(jdk11+tomcat8部署失败,版本不兼容)
  2. // xxx extends SpringBootServletInitializer {
  3. // @Override
  4. // protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
  5. // //此处的Application.class为带有@SpringBootApplication注解的启动类
  6. // return builder.sources(Spring4shellApplication.class);
  7. // }

示例:

  1. @SpringBootApplication
  2. public class Spring4shellApplication extends SpringBootServletInitializer {
  3. @Override
  4. protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
  5. //此处的Application.class为带有@SpringBootApplication注解的启动类
  6. return builder.sources(Spring4shellApplication.class);
  7. }
  8. public static void main(String[] args) {
  9. SpringApplication.run(Spring4shellApplication.class, args);
  10. }

3、war打包成功的标识(classes中存在class文件)

1.png

4、tomcat部署失败问题:

进入tomcat中的查看日志

vim tomcat/logs/localhost.xxxx-xx-xx.log

2.png

如果提示找不到依赖jar包,排查思路,查看打包文件中lib下是否存在该文件

1、打包方式错误,尽量选用maven插件打包,避免使用idea插件打包

2、jdk版本不兼容tomcat版本,考虑降低打包编译的jdk版本或者提高tomcat版本。