当前位置: 首页 > ds >正文

Spring Boot 项目打包成可执行程序

目录

一、配置 Maven 打包插件

二、生成可执行 JAR

三、运行程序

四、跨平台执行方案

1. Windows 平台

2. Linux/macOS 平台

五、高级封装(可选)

六、验证执行


将 Java Spring Boot 项目打包成可执行程序的完整流程如下(以 Maven 构建工具为例):

一、配置 Maven 打包插件

pom.xml 中确保包含 Spring Boot Maven 插件:

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

二、生成可执行 JAR

执行 Maven 打包命令:

mvn clean package

生成的可执行 JAR 位于:

target/项目名-版本号.jar

三、运行程序

直接通过 Java 命令运行:

java -jar target/项目名-版本号.jar

四、跨平台执行方案

1. Windows 平台

创建批处理文件 run.bat

@echo off
java -jar 项目名-版本号.jar
pause

2. Linux/macOS 平台

创建可执行脚本 run.sh

#!/bin/bash
java -jar 项目名-版本号.jar

赋予执行权限:

chmod +x run.sh

五、高级封装(可选)

使用第三方工具生成原生可执行文件:

  1. GraalVM Native Image
    配置 pom.xml

    <build><plugins><plugin><groupId>org.graalvm.buildtools</groupId><artifactId>native-maven-plugin</artifactId></plugin></plugins>
    </build>
    

    编译命令:

    mvn native:compile
    

  2. Launch4j (Windows)
    将 JAR 封装为 EXE 文件:

    <plugin><groupId>com.akathist.maven.plugins.launch4j</groupId><artifactId>launch4j-maven-plugin</artifactId><version>2.5.2</version><executions><execution><id>l4j-gui</id><phase>package</phase><goals><goal>launch4j</goal></goals></execution></executions>
    </plugin>
    

六、验证执行

启动后检查控制台输出:

Started Application in 2.45 seconds (JVM running for 3.01)

关键说明

  • 标准 Spring Boot JAR 包含嵌入式 Tomcat 服务器
  • 文件大小通常 20-100MB(包含所有依赖)
  • 运行要求:目标机器需安装匹配版本的 JRE
  • 生产环境建议配合 nohup (Linux) 或服务注册 (Windows) 实现后台运行
http://www.xdnf.cn/news/18942.html

相关文章:

  • HTML应用指南:利用POST请求获取全国三星门店位置信息
  • Ubuntu安装及配置Git(Ubuntu install and config Git Tools)
  • Next.js 15.5.0:探索 Turbopack Beta、稳定的 Node.js 中间件和 TypeScript 的改进
  • 30.throw抛异常
  • 【图像算法 - 23】工业应用:基于深度学习YOLO12与OpenCV的仪器仪表智能识别系统
  • 【P2P】P2P主要技术及RELAY服务1:python实现
  • Kubernetes 构建高可用、高性能 Redis 集群
  • 线性回归入门:从原理到实战的完整指南
  • k8sday17安全机制
  • 真实应急响应案例记录
  • 一键终结Win更新烦恼!你从未见过如此强大的更新暂停工具!
  • PNP机器人介绍:全球知名具身智能/AI机器人实验室介绍之多伦多大学机器人研究所
  • PC端逆向会用到的常见伪指令
  • 解读 “货位清则标识明,标识明则管理成” 的实践价值
  • 灰狼算法+四模型对比!GWO-CNN-BiLSTM-Attention系列四模型多变量时序预测
  • EasyClick 生成唯一设备码
  • 【CV】图像基本操作——①图像的IO操作
  • XC95144XL-10TQG144I Xilinx XC9500XL 高性能 CPLD
  • 从0到1:用 Qwen3-Coder 和 高德MCP 助力数字文旅建造——国庆山西游
  • 我的小灶坑
  • Web程序设计
  • 《 nmcli网络管理学习》
  • 28 FlashAttention
  • sudo 升级
  • 牛客周赛 Round 106(小苯的方格覆盖/小苯的数字折叠/ 小苯的波浪加密器/小苯的数字变换/小苯的洞数组构造/ 小苯的数组计数)
  • “华生科技杯”2025年全国青少年龙舟锦标赛在海宁举行
  • Linux网络套接字
  • 0825 http梳理作业
  • 自由学习记录(88)
  • springboot中操作redis的步骤