• Spring Boot项目如何打成war包部署呢?


    转自:

    Spring Boot项目如何打成war包部署呢?

    下文笔者讲述SpringBoot项目打成war包的方法分享,如下所示
    笔者先简述一下war及SpringBoot的相关概念

    war包的介绍

    war包由sun公司提出的一种web应用程序格式,她其实是一个压缩包
       里面包含lib,class,resource,config(web.xml)等信息
    
    war是一个可以直接运行的web模块
       在网站程序的打包中,我们经常将其打成war包
       然后放入到tomcat中运行
    例:
       我们将生成的war包,放入到tomcat的webapp目录下,tomcat会自动解压war包,然后对外提供服务 
    

    SpringBoot简介

     我们都知道springboot默认会打成一个jar包,并且里面内嵌了tomcat服务器
     那么如何将springboot打成war包,并且放于到tomcat中运行呢
    
    注意事项:
       如果使用了Spring的WebFlux功能
        则不支持 war 包部署
    

    生成war包的方式

    1. 修改 pom.xml 中的打包方式
    war
    
    2. 调整依赖
    
           org.springframework.boot
           spring-boot-starter-web
           
                
                 org.springframework.boot
                 spring-boot-starter-tomcat
             
        
    
    
       org.springframework.boot
       spring-boot-starter-tomcat
       
        provided
    
    
    3. 继承 SpringBootServletInitializer
    @SpringBootApplication
    public class AppQuickStart extends SpringBootServletInitializer {
    
        private static Logger logger = LoggerFactory.getLogger(AppQuickStart.class);
    
        public static void main(String[] args) {
            System.out.println(Thread.currentThread().getName());
            logger.info("app begin to start...");
            SpringApplication.run(AppQuickStart.class, args);
            logger.info("app start success...");
        }
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(AppQuickStart.class);
        }
    }
    
    4. 一些其他注意点
    下面是 build 的配置,主要是设置了应用的名称,还用就是加了maven-war-plugin这个插件,不然会报找不到web.xml这个错误
    
         appName
        
        
            
                
                    true
                
                org.springframework.boot
                spring-boot-maven-plugin
                
                    
                        
                            repackage
                        
                    
                
            
            
                org.apache.maven.plugins
                maven-war-plugin
                2.4
                
                    false
                
            
        
    
    

    采用以上方式后,即可使用mvn clean install命令进行打包安装

  • 相关阅读:
    Git 开源的版本控制系统-07-gitignore 指定忽略版本管理的文件
    【驱动开发】实现三盏灯的控制,编写应用程序测试
    【计算机网络】HTTP 重定向的应用场景
    语法练习:sum_double
    【Mysql】 InnoDB引擎深入- 行溢出
    Log4j和Log4j2的区别
    python包合集-argparse
    Linux:进程调度的O(1)算法
    测试工作十年,想对还在迷茫的朋友说:一点要做好个人规划...
    whisper-v3模型部署环境执行
  • 原文地址:https://blog.csdn.net/qq_25073223/article/details/128011512