zoukankan      html  css  js  c++  java
  • Spring Boot取消默认tomcat启动,打成war包发布到服务器运行

    一、设置打包方式

    在pom.xml中设置打包格式

    <packaging>war</packaging>
    

    二、取消Spring Boot的tomcat

    <!--部署成war包时开启↓↓↓↓-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <scope>provided</scope>
    </dependency>
    <!--部署成war包时开启↑↑↑↑-->
    

    scope的provided参数可以参考我另一篇博客provided参数

    取消默认的tomcat之后,还需要再排除spring-boot-starter-web中的一些web包

    否则会启动失败

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
             <exclusion>
                 <groupId>javax.servlet</groupId>
                 <artifactId>javax.servlet-api</artifactId>
             </exclusion>
        </exclusions>
     </dependency>
    

    三、重写启动类SpringBootApplication.java

    继承 SpringBootServletInitializer重写 configure方法

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

    四、修改打包的名称(可选)

    application.yml的

    server: 
    	servlet:  
    		context-path: /springboot
    

    和pom.xml

    <build>
        <finalName>springboot</finalName>
    </build>
    

    必须保持一致

  • 相关阅读:
    Redis使用:聚合类型为空时,会自动被Redis删除
    Effective C++: 04设计与声明
    select引起的服务端程序崩溃问题
    Effective C++: 03资源管理
    Effective C++: 02构造、析构、赋值运算
    Effective C++: 01让自己习惯C++
    Centos7.2 安装配置 Tengine(nginx)
    Centos7更新阿里yum源
    Go中函数作为值、类型传递。
    go实现冒泡排序和快速排序
  • 原文地址:https://www.cnblogs.com/mengw/p/11796844.html
Copyright © 2011-2022 走看看