SpringBoot项目如何打包成war包

 更新时间:2024年07月23日 10:20:16   作者:helloliyh  
使用SpringBoot 开发项目,由于内置了Tomcat,所以项目可以直接启动,部署到服务器的时候,直接打成 jar 包,就可以运行了,这篇文章主要介绍了SpringBoot项目如何打包成war包,需要的朋友可以参考下

SpringBoot项目打包成war包

1. 项目场景

使用SpringBoot 开发项目,由于内置了Tomcat,所以项目可以直接启动,部署到服务器的时候,直接打成 jar 包,就可以运行了。

有时需要把项目打包放入外置的 Tomcat 或者 TongWeb 中运行,就需要把项目打包成 war 包,。

2. 实现步骤

2.1 将启动类的pom文件打包方式更改为 war

<packaging>war</packaging>

2.2 排除内置 Tomcat

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <!-- 排除内置的tomcat -->
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
    </exclusions>
</dependency>

2.3 添加tomcat依赖,需要用到 servlet-api 的相关 jar 包 

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <!-- tomcat范围改成provided,否则后面就会出问题,tomcat无法解析jsp -->
    <scope>provided</scope>
</dependency>

2.4 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法

或者新建文件文件名随意,继承 SpringBootServletInitializer 并重写 configure 方法,也是一样的

@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    return builder.sources(MyApplication.class);
}
package com;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
@SpringBootApplication
public class MyApplication extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(MyApplication.class);
    }
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class, args);
    }
}

3. 打成 war 包

3.1 直接使用 IDEA 打包,首先运行 clean ,然后点 package,打包即可

3.2 运行完成会把项目打成war包

到此这篇关于SpringBoot项目如何打包成war包的文章就介绍到这了,更多相关SpringBoot打包成war包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • idea鼠标控制放大缩小的操作

    idea鼠标控制放大缩小的操作

    这篇文章主要介绍了idea鼠标控制放大缩小的操作教程,具有很好的参考价值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • 基于Java的Scoket编程

    基于Java的Scoket编程

    本文详细讲解了基于Java的Scoket编程,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • 解决Swagger修改请求对象字段文档不更新问题

    解决Swagger修改请求对象字段文档不更新问题

    这篇文章主要为大家介绍了解决Swagger修改请求对象字段文档不更新的问题,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Spring Boot 集成 MyBatis 全攻略(最新整理)

    Spring Boot 集成 MyBatis 全攻略(最新整理)

    本文详解SpringBoot集成MyBatis的流程,涵盖依赖配置、数据源设置、实体类与Mapper编写(注解/XML)、Service/Controller开发及分页、缓存、动态SQL等优化,助力建设高效全栈应用,感兴趣的朋友跟随小编一起看看吧
    2025-08-08
  • logback日志级别设置无效问题及解决

    logback日志级别设置无效问题及解决

    文章总结:文章介绍了在Spring Boot项目中配置日志级别时,优先级问题,通过查阅资料发现,配置文件中的logging.level.xx也能配置日志级别,且优先级比logback.xml高,文章还提供了源码分析,说明了Spring Boot如何处理日志级别配置
    2025-11-11
  • 基于MyBatis的数据持久化框架的使用详解

    基于MyBatis的数据持久化框架的使用详解

    Mybatis是一个优秀的开源、轻量级持久层框架,它对JDBC操作数据库的过程进行封装。本文将为大家讲解一下基于MyBatis的数据持久化框架的使用,感兴趣的可以了解一下
    2022-08-08
  • 深入解析Java编程中的StringBuffer与StringBuider

    深入解析Java编程中的StringBuffer与StringBuider

    这篇文章主要介绍了Java编程中的StringBuffer与StringBuider,是Java入门学习中的基础知识,需要的朋友可以参考下
    2015-09-09
  • Struts2实现文件下载功能代码分享(文件名中文转码)

    Struts2实现文件下载功能代码分享(文件名中文转码)

    这篇文章主要介绍了Struts2实现文件下载功能代码分享(文件名中文转码)的相关资料,需要的朋友可以参考下
    2016-06-06
  • java关键字static的使用详解

    java关键字static的使用详解

    这篇文章主要介绍了java关键字static的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • 基于mybatis-plus timestamp返回为null问题的排除

    基于mybatis-plus timestamp返回为null问题的排除

    这篇文章主要介绍了mybatis-plus timestamp返回为null问题的排除,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08

最新评论