SpringBoot项目快速打包与部署,War包⽅式打包部署与Jar包⽅式打包部署两种方式

SpringBoot项目快速打包与部署

  • Jar包方式打包
    • [1. 使用Maven打包](#1. 使用Maven打包)
    • [2. 将Jar包转移到服务器中](#2. 将Jar包转移到服务器中)
    • [3. 启动应用](#3. 启动应用)
  • War包方式打包
    • [1. 配置pom.xml](#1. 配置pom.xml)
    • [2. 修改启动类,提供SpringBoot项目启动器](#2. 修改启动类,提供SpringBoot项目启动器)
    • [3. 打成war包](#3. 打成war包)
    • [4. 将war包放入Tomcat的webapp文件内](#4. 将war包放入Tomcat的webapp文件内)

Jar包方式打包

由于SpringBoot默认集成了Tomcat服务器,所以将SpringBoot以默认的jar包方式打包部署非常简单方便。

1. 使用Maven打包

双击package进行打包,看到下方出现build success,证明打包成功,去target目录下查找jar文件

2. 将Jar包转移到服务器中

将打包好的jar包放到服务器中,注意备份之前的数据。

3. 启动应用

回到服务器上,存储jar包的目录,使用命令启动服务。

bash 复制代码
java -jar [jar包名称]

注意 在重启服务时,先杀死旧的服务,可以使用 jps 命令查看或 ps -ef|grep [服务名] 查看进程id,并使用 kill -9 [进程id] 杀死原有进程

War包方式打包

虽然通过SpringBoot的内嵌tomcat可以直接打Jar包进行部署,但是有些服务器上已经配置好了Tomcat服务器,并且需要使用Tomcat服务器部署多个应用,此时需要我们把项目打包成War包的形式部署到服务器中。

1. 配置pom.xml

打开pom文件,增加以下内容

xml 复制代码
<!-- 1. 项目打包方式显示声明为war包-->
    <packaging>war</packaging>

添加新的依赖

xml 复制代码
<!-- 2. 声明使用外部提供的tomcat环境,默认不再使用自带tomcat-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <!-- 将服务器声明为外部提供-->
            <scope>provided</scope>
        </dependency>

2. 修改启动类,提供SpringBoot项目启动器

java 复制代码
                                   // 3.提供springboot项目启动器
public class SkyApplication extends SpringBootServletInitializer {
    public static void main(String[] args) {
        SpringApplication.run(SkyApplication.class, args);
        log.info("server started");
    }

    // 4. 重写父类方法中的configure(), 执行初始化的项目启动类是谁(SkyApplication)
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        //return super.configure(builder);
        return builder.sources(SkyApplication.class);
    }
}

3. 打成war包

4. 将war包放入Tomcat的webapp文件内

将war包放入Tomcat的webapp文件内,并启动tomcat服务。

相关推荐
昀贝2 分钟前
Maven项目引用本地jar涉及scope和systemPath配置
python·maven·jar
满分观察网友z9 分钟前
从混乱到有序:我用“逐层扫描”法优雅搞定公司组织架构图(515. 在每个树行中找最大值)
后端·算法
风象南13 分钟前
SpringBoot应用开机自启动与进程守护配置
java·spring boot·后端
寻月隐君16 分钟前
Rust核心利器:枚举(Enum)与模式匹配(Match),告别空指针,写出优雅健壮的代码
后端·rust·github
满分观察网友z16 分钟前
一行代码的惊人魔力:从小白到大神,我用递归思想解决了TB级数据难题(3304. 找出第 K 个字符 I)
后端·算法
程序员岳焱17 分钟前
Java 与 MySQL 性能优化:MySQL连接池参数优化与性能提升
后端·mysql·性能优化
这里有鱼汤18 分钟前
一招横盘突破选股法,赚钱不靠运气靠图形,靠概率!
后端·python
万少28 分钟前
鸿蒙外包的十大生存法则
前端·后端·面试
fouryears_2341731 分钟前
Spring核心原理的快速入门:快速了解IoC与DI
java·后端·spring
顽疲42 分钟前
从零用java实现 小红书 springboot vue uniapp(13)模仿抖音视频切换
java·vue.js·spring boot