Springboot项目以war包形式部署到外部Tomcat

步骤1:继承SpringBootServletInitializer

外部容器部署的话,就不能依赖于Application的main函数了,而是要以类似于web.xml文件配置的方式来启动Spring应用上下文,此时我们需要在启动类中继承SpringBootServletInitializer并实现configure方法

package com.test.chaosblade;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration;
import org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

/**
 * @description:
 * @time: 2020-08-28 15:49
 */
@SpringBootApplication(exclude = {
    
     DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class, SecurityAutoConfiguration.class })
public class ChaosbladeApplication extends SpringBootServletInitializer {
    
    
    public static void main(String[] args) {
    
    
        SpringApplication.run(ChaosbladeApplication.class, args);
    }

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    
    
        return builder.sources(this.getClass());
        //此处的ChaosbladeApplication是springboot启动类
    }
}

猜你喜欢

转载自blog.csdn.net/sinat_34241861/article/details/115185968