免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持APP、电脑端、小程序、IOS免签等等

打包exe包含jre

在这篇文章中,我们将简要介绍如何将 Java 应用程序打包为一个独立的受控物 (应用程序独立),并附带自己的 Java 运行时环境(JRE) 。这种方法的优点是用户不需要单独安装 Java,可以在不影响其其他 Java 应用程序的情况下运行您的应用程序。

在发布 Java 应用程序时,通常有两种方法:一种是让用户在计算机上安装 JRE 或 JDK,然后单独提供您的应用程序,另一种是将 JRE 捆绑在应用程序中并一并提供给用户。以下为详细介绍这两种方案。

### 为什么包含 JRE?

打包 JRE 的优点:

1. 便捷性。用户不需要单独安装 JRE。

2. 独立性。用户可以在不影响他们的其他 Java 应用程序的情况下管理您的应用程序。

3. 版本控制。您可以确保您的应用程序始终使用您指定的正确 JRE 版本。

### 如何打包?

1. 使用 jlink 工具

在 Java 9 中引入了 jlink 工具。它使开发人员能够创建可执行文件,该文件包含您的应用程序所需的所有模块以及自定义运行时映像。以下为使用 jlink 的步骤:

a. 将 Java 源代码编译为模块

b. 创建一个使用所有需要的模块的 `module-info.java` 文件

c. 创建运行时映像

d. 创建可执行文件

2. 使用 native-image 工具 (GraalVM)

使用 GraalVM 中的 native-image, JVM应用程序可以编译成与操作系统相关的可执行文件。这个可执行文件将包含内置的JRE,这样您的客户就不需要单独安装 Java。步骤如下:

a. 安装并配置 GraalVM

b. 运行`native-image`命令,该命令将接受一个jar文件输入并将其转换为一个本地可执行文件

3. 使用打包工具 (Launch4j, JSmooth 等)

有一些第三方工具能将 Java 应用程序打包为 Windows .exe 文件或其他平台的可执行文件。这些工具通常允许您选择捆绑 JRE 或依赖系统 JRE。例如 Launch4j, JSmooth 和 jarsplice 等。

使用其中任何一个工具,都需要进行以下步骤:

a. 创建一个包含您的应用程序类文件和 JRE 的本地目录结构

b. 使用打包工具,按照工具文档中的说明,将上述目录结构打包为一个可执行文件

### 结论

每种方法都有其优缺点,例如可以考虑使用打包工具,因为它们可以使我们以相对简单的方式创建可执行文件。但是,如果您希望为特定的Java版本创建最小化的Java运行时映像,那么jlink可能更适合您的需求。

无论哪种选择,以上三种方法都使您能够发布一个自包含的应用程序,用户无需单独安装JRE即可运行。


相关知识:
qt生成的exe如何发布
在本教程中,我们将详细介绍如何发布使用Qt生成的exe文件。发布Qt应用程序涉及收集与之相关的依赖文件,如动态链接库(DLLs)、插件(plugins)和其他资源,并将它们打包在一个易于分发的文件中以供其他用户使用。发布Qt应用程序一般有两种方式:静态链接
2023-06-14
qtcreator打包exe
在本教程中,我们将了解如何在 Qt Creator 中打包您的 Qt 应用程序为一个 Windows 可执行文件(.exe)。Qt 是一个多平台 C++ 应用程序框架,可以让您为不同的操作系统编写应用程序,只需要一套源代码。通过打包为可执行文件,我们将为用
2023-06-14
nwjs项目打包exe程序
标题:NW.js 项目打包成 EXE 程序导语:NW.js 是一个让你通过 HTML, CSS 和 JavaScript 来构建桌面应用的框架。本教程通过简单明了的步骤,教你如何将 NW.js 项目打包成 EXE 程序 (适用于在 Windows 系统上运
2023-06-14
matlabgui生成exe文件
在本教程中,我们将了解如何将使用MATLAB App Designer创建的图形用户界面(GUI)应用转换为独立的可执行文件(.exe)。这可以让没有安装MATLAB的用户方便地运行您的应用。实现这一转换的过程涉及到使用MATLAB编译器以及对项目文件进行
2023-06-14
lua打包的exe很大
Lua打包成EXE的原理与详细介绍在本文中,我们将讨论Lua脚本打包成为独立可执行文件(EXE)的原理以及相关的详细信息。由于许多新手可能在执行此操作时遇到疑惑,所以本文将以简单明了的方式为你解释原理。Lua是一种轻量级的编程语言,旨在以简洁的设计、易于嵌
2023-06-14
java可以生成exe吗
Java可以生成exe文件,但是完成这个任务的过程与将其他编程语言生成exe文件不同。首先,让我们了解Java程序的运行原理。Java程序运行原理:1. Java源文件(.java)通过Java编译器(javac)编译成字节码文件(.class)。2. J
2023-06-14