JDK14之jpackage打包命令的使用

网友投稿 1262 2023-06-06

JDK14之jpackage打包命令的使用

JDK14之jpackage打包命令的使用

1.前提:已安装JDK14,可以到jdk官网-,或加QQ群835259695,快速免费-

2.不说没用的直接上jdk14环境下的jpackage命令,打开cmd窗口输入:jpackage -h 得到如下内容:

F:>jpackage -h

WARNING: Using incubator modules: jdk.incubator.jpackage

用法:jpackage

示例用法:

生成适合主机系统的应用程序包:

对于模块化应用程序:

jpackage -n name -p modulePath -m moduleName/className

对于非模块化应用程序:

jpackage -i inputDir -n name \

--main-class className --main-jar myJar.jar

从预构建的应用程序映像:

jpackage -n name --app-image appImageDir

生成应用程序映像:

对于模块化应用程序:

jpackage --type app-image -n name -p modulePath \

-m moduleName/className

对于非模块化应用程序:

jpackage --type app-image -i inputDir -n name \

--main-class className --main-jar myJar.jar

要为 jlink 提供您自己的选项,请单独运行 jlink:

jlink --output appRuntimeImage -p modulePath -m moduleName \

--no-header-files [...]

jpackage --type app-image -n name \

-m moduleName/className --runtime-image appRuntimeImage

生成 java 运行时程序包:

jpackage -n name --runtime-image

一般选项:

@\

从文件读取选项和/或模式

可以多次使用此选项。

--type -t \

要创建的程序包的类型

有效值为:{"app-image", "exe", "msi"}

如果未指定此选项,则将创建与平台相关的

默认类型。

--app-version \

应用程序和/或程序包的版本

--copyright \

应用程序的版权

--description \

应用程序的说明

--help -h

将用法文本输出到输出流并退出,用法文本中包含

适用于当前平台的每个有效选项的列表和说明

--name -n \

应用程序和/或程序包的名称

--dest -d \

用来放置所生成的输出文件的路径

默认为当前的工作目录。

(绝对路径或相对于当前目录的路径)

--temp \

用来创建临时文件的新目录或空白目录的路径

(绝对路径或相对于当前目录的路径)

如果指定,则在任务完成时将不删除临时目录,

必须手动删除临时目录

如果未指定,则将创建一个临时目录,

并在任务完成时删除该临时目录。

--vendor \

应用程序的供应商

--verbose

启用详细的输出

--version

将产品版本输出到输出流并退出

用来创建运行时映像的选项:

--add-modules <模块名称>[,<模块名称>...]

要添加的模块的逗号 (",") 分隔列表。

此模块列表连同主模块(如果指定)

将作为 --add-module 参数传递到 jlink。

如果未指定,则仅使用主模块(如果指定了 --module),

或者使用默认的模块集(如果指定了

--main-jar)。

可以多次使用此选项。

--module-path -p \...

路径的 ; 分隔列表

每个路径要么是模块的目录,要么是

模块 jar 的路径。

(每个路径可以是绝对路径,也可以是相对于当前目录的路径)

可以多次使用此选项。

--bind-services

将 --bind-servichttp://es 选项传递到 jlink(将在服务

提供商模块及其被依赖对象中进行链接

--runtime-image \

将复制到应用程序映像的预定义

运行时映像的路径

(绝对路径或相对于当前目录的路径)

如果未指定 --runtime-image,jpackage 将运行 jlink 以

使用如下选项创建运行时映像:

--strip-debug、--no-header-files、--no-man-pages 和

--strip-native-commands。

用来创建应用程序映像的选项:

--icon \

应用程序包图标的路径

(绝对路径或相对于当前目录的路径)

--input -i \

包含要打包的文件的输入目录的路径

(绝对路径或相对于当前目录的路径)

输入目录中的所有文件将打包到

应用程序映像中。

用来创建应用程序启动程序的选项:

--add-launcher \=\

启动程序的名称和包含关键字-值对列表的

属性文件的路径

(绝对路径或相对于当前目录的路径)

可以使用关键字 "module"、"main-jar"、"main-class"、

"arguments"、"java-options"、"app-version"、"icon" 和

"win-console"。

这些选项将添加到原始命令行选项中或者用来覆盖

原始命令行选项,以构建额外的替代启动程序。

将从命令行选项构建主应用程序启动程序。

可以使用此选项构建额外的替代启动程序,

可以多次使用此选项来构建

多个额外的启动程序。

--arguments \

在没有为启动程序提供命令行参数时,

要传递到主类的命令行参数

可以多次使用此选项。

--java-options \

要传递到 Java 运行时的选项

可以多次使用此选项。

--main-class \

要执行的应用程序主类的限定名称

只有在指定了 --main-jhttp://ar 时才能使用此选项。

--main-jar \

应用程序的主 JAR;包含主类

(指定为相对于输入路径的路径)

可以指定 --module 或 --main-jar 选项,但是不能同时指定

这两个选项。

--module -m \[/\

]

应用程序的主模块(以及可选的主类)

此模块必须位于模块路径中。

如果指定了此选项,则将在 Java 运行时映像中

链接主模块。可以指定 --module 或 --main-jar 选项,

但是不能同时指定这两个选项。

用来创建应用程序启动程序的与平台相关的选项:

--win-console

为应用程序创建控制台启动程序,应当为

需要控制台交互的应用程序指定

用来创建应用程序包的选项:

--app-image \

用来构建可安装程序包的

预定义应用程序映像的位置

(绝对路径或相对于当前目录的路径)

--file-associations \

包含关键字-值对列表的属性文件的路径

(绝对路径或相对于当前目录的路径)

可以使用关键字 "extension"、"mime-type"、"icon" 和 "description"

来描述此关联。

可以多次使用此选项。

--install-dir \

默认安装位置下面的相对子路径

--license-file \

许可证文件的路径

(绝对路径或相对于当前目录的路径)

--resource-dir \

覆盖 jpackage 资源的路径

可以通过向该目录中添加替代资源来覆盖 jpackage 的

图标、模板文件和其他资源。

(绝对路径或相对于当前目录的路径)

--runtime-image \

要安装的预定义运行时映像的路径

(绝对路径或相对于当前目录的路径)

在创建运行时程序包时需要使用选项。

用来创建应用程序包的与平台相关的选项:

--win-dir-chooser

添加一个对话框以允许用户选择

产品的安装目录

--win-menu

将该应用程序添加到系统菜单中

--win-menu-group \

启动该应用程序所在的菜单组

--win-per-user-install

请求基于每个用户执行安装

--win-shortcut

为应用程序创建桌面快捷方式

--win-upgrade-uuid \

与此程序包升级相关联的 UUID

总结:

对于javafx打包来说我就关注如何去使用前两条命令

对于模块化应用程序:

jpackage -n name -p modulePath -m moduleName/className

对于非模块化应用程序:

jpackage -i inputDir -n name

–main-class className --main-jar myJar.jar

使用范例:

例一: jpackage -n myAppName -p myModulePath -m xzlDemo/com.xzl.JavaFxApplication

例二: jpackage -i ./ --temp tempDir --type “exe” --main-jar SipWifiMonitor-1.0-SNAPSHOT-jar-with-dependencies.jar

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:使用spring stream发送消息代码实例
下一篇:在windows环境下安装jdk8、jdk9、jdk11、jdk12并自由切换
相关文章

 发表评论

暂时没有评论,来抢沙发吧~