可以使用此选项构建额外的替代启动程序,
可以多次使用此选项来构建
多个额外的启动程序。
--arguments <main class arguments>
在没有为启动程序提供命令行参数时,
要传递到主类的命令行参数
可以多次使用此选项。
--java-options <java options>
要传递到 Java 运行时的选项
可以多次使用此选项。
--main-class <class name>
要执行的应用程序主类的限定名称
只有在指定了 --main-jar 时才能使用此选项。
--main-jar <main jar file>
应用程序的主 JAR;包含主类
(指定为相对于输入路径的路径)
可以指定 --module 或 --main-jar 选项,但是不能同时指定
这两个选项。
--module -m <module name>[/<main class>]
应用程序的主模块(以及可选的主类)
此模块必须位于模块路径中。
如果指定了此选项,则将在 Java 运行时映像中
链接主模块。可以指定 --module 或 --main-jar 选项,
但是不能同时指定这两个选项。
用来创建应用程序启动程序的与平台相关的选项:
--win-console
为应用程序创建控制台启动程序,应当为
需要控制台交互的应用程序指定
用来创建应用程序包的选项:
--app-image <file path>
用来构建可安装程序包的
预定义应用程序映像的位置
(绝对路径或相对于当前目录的路径)
--file-associations <file path>
包含关键字-值对列表的属性文件的路径
(绝对路径或相对于当前目录的路径)
可以使用关键字 "extension"、"mime-type"、"icon" 和 "description"
来描述此关联。
可以多次使用此选项。
--install-dir <file path>
默认安装位置下面的相对子路径
--license-file <file path>
许可证文件的路径
(绝对路径或相对于当前目录的路径)
--resource-dir <path>
覆盖 jpackage 资源的路径
可以通过向该目录中添加替代资源来覆盖 jpackage 的
图标、模板文件和其他资源。
(绝对路径或相对于当前目录的路径)
--runtime-image <file-path>
要安装的预定义运行时映像的路径
(绝对路径或相对于当前目录的路径)
在创建运行时程序包时需要使用选项。
用来创建应用程序包的与平台相关的选项:
--win-dir-chooser
添加一个对话框以允许用户选择
产品的安装目录
--win-menu
将该应用程序添加到系统菜单中
--win-menu-group <menu group name>
启动该应用程序所在的菜单组
--win-per-user-install
请求基于每个用户执行安装
--win-shortcut
为应用程序创建桌面快捷方式
--win-upgrade-uuid <id string>
与此程序包升级相关联的 UUID
package.bat
@echo off
echo 打包执行开始...
:: 是否打印台展示【0=否,1=是】
set CONSOLE_FLAG=1
:: jdk14地址
set JAVA_PATH=D:\dev\jdk-17.0.7\bin\
:: 当前文件夹
set PROJECT_FOLDER=%~dp0
:: 应用名称,不能为空
set EXE_NAME=测试打包应用
:: 应用icon名称,空为默认icon
set EXE_ICON=exe.ico
:: 应用jar,不能为空
set EXE_JAR=spring-exe2-1.0-SNAPSHOT.jar
:: 应用供应商名称
set EXE_VENDOR=
:: 应用版本
set version=1.0.0
echo 当前项目地址%PROJECT_FOLDER%
if %CONSOLE_FLAG% == 1 (
set CONSOLE_KEY=--win-console
)
set jarFolder=%PROJECT_FOLDER%target
if not exist %jarFolder% (
echo %jarFolder%【文件夹不存在】
pause
)
cd %JAVA_PATH%
jpackage -t exe -i %jarFolder% -n %EXE_NAME% --main-jar %EXE_JAR% --icon %PROJECT_FOLDER%%EXE_ICON% --app-version %version% --vendor %EXE_VENDOR% %CONSOLE_KEY% --verbose --win-dir-chooser --win-shortcut
pause