likes
comments
collection
share

SpringBoot 打包发布

作者站长头像
站长
· 阅读数 11

前言

SpringBoot的打包时打成jar包,不是war包。

  在软件领域,JAR文件(Java归档,英语:Java Archive)是一种软件包文件格式,通常用于聚合大量的Java类文件、相关的元数据和资源(文本、图片等)文件到一个文件,以便开发Java平台应用软件或库。

  JAR文件是一种归档文件,以ZIP格式构建,以.jar为文件扩展名。用户可以使用JDK自带的jar命令创建或提取JAR文件。也可以使用其他zip压缩工具,不过压缩时zip文件头里的条目顺序很重要,因为Manifest文件常需放在首位。JAR文件内的文件名是Unicode文本。

1、初始项目

通过一个简单的项目来打包jar包,来进行SpringBoot打包发布的学习。

SpringBoot的打包与发布可以让前后段分离开发变得方便快捷。

1、创建一个SpringBoot项目

SpringBoot 打包发布

2、编写一个简单的Web项目

TestController代码

package com.example.jar.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping()
public class TestController {
    @RequestMapping("/test")
    public String test() {
        return "Hello World" +
                "This is a Jar project";
    }
}

SpringBoot 打包发布

3、项目运行效果

  在浏览器输入:localhost:8080/test , 显示"Hello World" +"This is a Jar project"

SpringBoot 打包发布

2、打包

1、导入坐标

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
</plugin>

SpringBoot 打包发布

我们只需要使用 Mavenpackage 指令打包就会在 target 目录下生成对应的 Jar 包。

该插件必须配置,不然打好的 jar 包也是有问题的。

2、Clean

  右侧工具栏maven,点击plugins的clean。

SpringBoot 打包发布

SpringBoot 打包发布

3、Complier编译

  右侧工具栏maven,点击plugins的complier。

SpringBoot 打包发布

SpringBoot 打包发布

4、package打包

右侧工具栏maven,点击plugins的package进行打包。

打包完成后会在左侧项目target文件下生成一个 .jar 文件。

SpringBoot 打包发布

5、启动

1、进入 jar 包所在位置,在 命令提示符 中输入如下命令

java -jar jar-0.0.1-SNAPSHOT.jar

SpringBoot 打包发布

2、成功运行

SpringBoot 打包发布

3、在浏览器测试依然可以正常

SpringBoot 打包发布

6、问题

  可能遇到的问题,打包失败,jar包没有主清单属性,下面的代码粘贴到pom.xml指定位置。

  <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

3、Linux环境部署

  上面可知,SpringBoot项目打包的jar包可以在 jdk 环境下运行,比war包更放便,下面我们把jar包部署到linux环境下进行测试。

所需环境:

  • 一台云服务器(Linux系统)或者虚拟机
  • jdk环境

1、上传jar包

  用Xftp或者其他软件把,把刚刚打jar包上传服务器的任意目录。

SpringBoot 打包发布

2、运行

  进入jar文件所在目录,输入nohup java -jar xxx & 命令启动项目。

cd /usr/xmp

SpringBoot 打包发布

 nohup java -jar jar-0.0.1-SNAPSHOT.jar &

注:nohup java -jar xxx & 是后台启动,关闭链接也不会停止运行。

关闭

kill -9 [进程号]

3、测试

  输入ip地址+端口号+测试路径,成功运行。

SpringBoot 打包发布

总结

  以上就是SpringBoot的打包,以及部署到Linux的详细步骤,最后送上一句毒鸡汤:生活不会放弃你,但也不会放过你。