zoukankan      html  css  js  c++  java
  • spring boot 发布 jar 包转为 war

    Spring Boot 支持发布jar包和war包,它推荐的是使用jar形式发布

      使用jar包比较方便,但如果是频繁修改更新的项目,需要打补丁包,那这么大的jar包上传都是问题

      jar包不一定合适适用所有的场景,如war包更合适,可以尝试转为传统的war包,这样打补丁包可能更方便

    1.修改Spring Boot启动类:启动类继承 SpringBootServletInitializer类,并覆盖 configure方法

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

    2.修改jar为war包

    #在pom中添加war包配置
    <
    packaging>war</packaging>

    3.去除Spring Boot内置Tomcat

    <dependencies>
       <!--修改自带tomcat依赖范围为provided,防止与外部tomcat发生冲突-->
       <dependency>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-starter-tomcat</artifactId>
           <scope>provided</scope>
       </dependency>
    </dependencies>

    4.添加war包打包插件

      如果用的是继承spring-boot-starter-parent的形式使用Spring Boot,那可以跳过,因为它已经配置好了

      如果使用的依赖spring-boot-dependencies形式,需要添加以下插件

    <plugin>
       <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-war-plugin</artifactId>
       <configuration>
        <!--failOnMissingWebXml需要开启为false,不然打包会报没有web.xml错误-->        <failOnMissingWebXml>false</failOnMissingWebXml>    </configuration> </plugin>

    5.打war包

      在Maven中使用 mvn cleanpackage命令打包

      在Idea中打包

      

     jar包转war包影响

      1.application配置文件中的server.xx等关于容器的配置就无效了,改配置需要在外部tomcat中进行

       2.Spring Boot的升级是否需要Tomcat跟着升级

      3、打war包比打jar明显要变慢好多

  • 相关阅读:
    基于python+django+mysql的接口测试平台
    firefox没有装在C盘,webdriver启动firefox时报错
    Python知识点面试题
    Python面试题整理
    Python程序猿面试杂谈
    Python面试-websocket及web框架
    Python面试-DB相关
    Python面试简介及并行并发
    flink-demo2
    flink-table demo
  • 原文地址:https://www.cnblogs.com/qinxu/p/14201887.html
Copyright © 2011-2022 走看看