SpringBoot 工程部署 Jar 包

打包方式一:

特点:将项目代码和依赖库打包在一个 Jar 包中(这种方式打包和部署简单,但是 Jar 包较大,上传服务器更慢)

项目的 pom.xml 文件添加SpringBoot 打包插件如下:

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

项目 Maven 工程中运行 package 插件命令进行打包,如下:

控制台显示打包成功信息如下:

...
[INFO] --- spring-boot-maven-plugin:2.7.15:repackage (repackage) @ SpringBootApp ---
[INFO] Replacing main artifact with repackaged archive
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 20.593 s
[INFO] Finished at: 2024-11-19T16:06:16+08:00
[INFO] ------------------------------------------------------------------------

Process finished with exit code 0

打包成功后将在项目的 target 目录下生成 Jar 包如下:

运行 Jar 包启动 SpringBoot 程序如下:

命令格式:java -jar xxx.jar

> java -jar SpringBootApp.jar

注:clean :用于删除 target 文件夹,重新进行打包

打包方式二:

特点:Jar 包中包含项目代码,依赖库放在外部 lib 文件夹中(这种方式打包和部署更复杂,但是 Jar 包较小,上传服务器更快)

将方式一打包得到的 Jar 包进行解压(如果不能直接解压,则将后缀改为 zip 再进行解压),我们只需要拿到 BOOT-INF 中的 lib 目录即可,如下:

项目的 pom.xml 文件添加 SpringBoot 打包插件如下:

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <mainClass>com.binge.App</mainClass>
                <layout>ZIP</layout>
                <includes>
                    <include>
                        <groupId>nothing</groupId>
                        <artifactId>nothing</artifactId>
                    </include>
                </includes>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
  • mainClass,我们指定了项目的启动类
  • layout,我们指定了打包方式为 ZIP,注意:一定是大写的
  • includes,有自己的依赖 jar,可以在此导入
  • repackage,剔除其它的依赖,只需要保留最简单的结构

项目 Maven 工程中运行 package 插件命令进行打包,如下:

打包成功后将在项目的 target 目录下生成 Jar 包如下:

运行 Jar 包启动 SpringBoot 程序如下:

命令格式:java -Dloader.path=./lib -jar xxx.jar

>java -Dloader.path=./lib -jar SpringBootApp.jar
  • -Dloader.path:设置项目所依赖的 jar 包位置
posted @ 2024-11-19 16:55  Binge-和时间做朋友  阅读(31)  评论(0编辑  收藏  举报