最近有一个小需求,需要将一些程序傻瓜式打包给用户安装使用,由此花了点时间研究了一下打包,市面上能把Java打包的工具有很多,我这里不一一列举了,大家自行百度或者AI,这里我介绍一种JDK官方提供的打包工具jpackage

JDK环境准备

首先jpackage 命令需要JDK14以上,请自行配置Maven的编译环境,以下图片是配置IDEA的Maven编译环境
40d7a46e-b084-43c4-a260-2adf8a316481

maven-easypackage-plugin 插件使用

其次 打包exe需要借助一个Maven插件maven-easypackage-plugin 帮我快速打包,省去手写命令的麻烦

<plugin>
  <groupId>io.github.janix520</groupId>
  <artifactId>maven-easypackage-plugin</artifactId>
  <version>1.3.0</version>
  <executions>
    <execution>
      <phase>package</phase>
      <goals>
        <goal>jpackage</goal>
      </goals>
    </execution>
  </executions>
  <configuration>
    <!-- 是否是最小打包,用于精简虚拟机 -->
    <minimum>true</minimum>
    <!-- 应用程序名称 -->
    <name>${project.artifactId}</name>
    <!-- 主运行类 -->
    <mainClass>cn.alexalbb.Application</mainClass>
    <!-- 是否显示控制台 -->
    <winConsole>false</winConsole>
    <!-- 应用程序图标 -->
    <icon>${project.basedir}/src/main/resources/icon.png</icon>
    <!--可选app-image、exe、msi、rpm、deb、pkg、dmg,msi需要另外一个程序配合,app-image是exe绿色版,exe是安装包,其他自行搜索-->
    <type>app-image</type>
    <appVersion>1.0.0</appVersion>
    <copyright>版权所有</copyright>
    <vendor>公司名称</vendor>
    <description>程序描述</description>
  </configuration>
</plugin>

wixtoolset 工具准备

再者插件打包exe还需要 wixtoolset 工具,(解决打包报错:找不到 WiX 工具 (light.exe, candle.exe), 从 https://wixtoolset.org 下载 WiX 3.0 或更高版本, 然后将其添加到 PATH )

  1. 来到官网
    image-1739342909169

  2. 点开Assets下载exe或者第一个二进制文件都行

  3. 下载文件后打开,会有一个install选项,目前我已经安装显示uninstall

  4. image-1739343043731

  5. 安装完毕即可

打包

最后开始打包程序,打包在文档中有很多种类型,exe是安装包版本,也有免安装的绿色版,参数是app-image

exe安装包版本

使用Maven打exe安装包版本 命令
image-1739343281459
打包完成会在项目的target目录生成一个exe安装引导文件(实际上就是将运行环境与jar包依赖打包在一起了)
image-1739343561061
傻瓜式下一步,自己找一个安装文件夹安装,安装完毕创建一个快捷方式在桌面就可以使用了

app-image免安装绿色版

使用Maven打app-image安装包版本 命令
image-1739343281459
打包完成会在项目的target目录生成所有依赖(app文件夹)与运行环境(runtime文件夹)与可执行文件exe与图标,免安装版可直接运行
image-1739439221462

上一篇 下一篇