一、概述
在本教程中,我们将首先学习如何将 Java 程序打包到可执行的 Java ARchive (JAR) 文件中。 然后,我们将了解如何使用该可执行 JAR 生成 Microsoft Windows 支持的可执行文件。
我们将使用 Java 附带的jar
命令行工具来创建 JAR 文件。 然后,我们将学习使用jpackage
工具(可用于 Java 16 及更高版本的jdk.jpackage,
来生成可执行文件。
2. 和命令的基础知识jar
jpackage
JAR 文件是已编译的 Java 类文件和其他资源的容器。 它基于流行的 ZIP 文件格式。
可执行的 JAR 文件也是一个 JAR 文件,但也包含一个主类。 主类在清单文件中被引用,我们稍后会讨论。
为了运行以 JAR 格式交付的应用程序,我们必须有一个 Java 运行时环境 (JRE)。
与 JAR 文件不同,特定于平台的可执行文件可以在为其构建的平台上本地运行。 例如,该平台可以是 Microsoft Windows、Linux 或 Apple macOS。
为了获得良好的最终用户体验,最好为客户提供特定于平台的可执行文件。
2.1。 命令jar
创建 JAR 文档的常规语法是:
jar cf jar-file input-file(s)
让我们看一下使用命令创建新存档时可以使用的一些选项:jar
c
指定我们要创建一个 JAR 文件f
指定我们希望输出到一个文件m
用于包含来自现有清单文件的清单信息jar-file
是我们希望生成的 JAR 文件的名称。 JAR 文件通常具有扩展名,但这不是必需的。.jar
input-file(s)
是一个以空格分隔的文件名列表,我们希望将其包含在 JAR 文件中。 通配符也可以在这里使用。*
一旦我们创建了一个 JAR 文件,我们就会经常检查它的内容。 要查看 JAR 文档包含的内容,我们使用以下语法:
jar tf jar-file
这里, 表示我们要列出 JAR 文档的内容。 选项表示我们要检查的 JAR 文档是在命令行中指定的。t
f
2.2. 命令jpackage
jpackage
命令行工具帮助我们为模块化和非模块化 Java 应用程序生成可安装的包。
它使用命令为我们的应用程序生成 Java 运行时映像。 结果,我们得到了一个针对特定平台的自包含应用程序包。jlink
由于应用程序包是为目标平台构建的,因此该系统必须包含以下内容:
应用程序本身
一个JDK
打包工具所需的软件。 对于 Windows,
jpackage
需要 WiX 3.0 或更高版本。
以下是命令的常用形式:jpackage
jpackage --input . --main-jar MyAppn.jar
3. 创建可执行文件
现在让我们来创建一个可执行的 JAR 文件。 准备就绪后,我们将着手生成 Windows 可执行文件。
3.1。 创建可执行 JAR 文档
创建可执行 JAR 相当简单。 我们首先需要一个 Java 项目,其中至少包含一个带有方法的类。 我们为示例创建了一个名为的 Java 类。main()
MySampleGUIAppn
第二步是创建一个清单文件。 创建到 :MySampleGUIAppn.mf
Manifest-Version: 1.0 Main-Class: MySampleGUIAppn
我们必须确保此清单文件末尾有一个换行符才能正常工作。
列表文档准备好后,我们将创建一个可执行的 JAR:
jar cmf MySampleGUIAppn.mf MySampleGUIAppn.jar MySampleGUIAppn.class MySampleGUIAppn.java
让我们查看我们创建的 JAR 的内容:
jar tf MySampleGUIAppn.jar
这是一个示例输出:
META-INF/ META-INF/MANIFEST.MF MySampleGUIAppn.class MySampleGUIAppn.java
接下来,我们可以通过 CLI 或 GUI 运行我们的 JAR 可执行文件。
让我们在命令行上运行它:
java -jar MySampleGUIAppn.jar
在 GUI 中,我们可以简单地双击相关的 JAR 文件。 这应该像任何其他应用程序一样正常启动它。
3.2.创建 Windows 可执行文件
现在我们的可执行 JAR 已经准备就绪并且可以工作了,让我们为示例项目生成一个 Windows 可执行文件:
jpackage --input . --main-jar MySampleGUIAppn.jar
此命令需要很短的时间才能完成。 完成后,它会在当前工作文件夹中生成一个文件。 可执行文档的文件名将与列表文件中提到的版本号连接。 我们将能够像任何其他 Windows 应用程序一样激活它。exe
以下是我们可以与命令一起使用的更多特定于 Windows 的选项:jpackage
–type
: 指定而不是默认的格式msi
exe
–win-console
: 使用控制台窗口启动我们的应用程序–win-shortcut
: 在 Windows 开始菜单中创建一个快捷方式文件–win-dir-chooser
:让最终用户指定自定义目录来安装可执行文件–win-menu –win-menu-group
:让最终用户在开始菜单中指定自定义目录
4。 结论
在本文中,我们学习了有关 JAR 文件和可执行 JAR 文件的一些基础知识。 我们还了解了如何将 Java 程序转换为 JAR 可执行文件,然后再转换为 Microsoft Windows 支持的可执行文件。
0 评论