免费试用

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

精简jre打包exe

在本教程中,我们将学习如何精简Java运行时环境(JRE)并将其与Java应用程序一起打包成一个独立的可执行文件(EXE)。这对于多个原因非常有用,如减小文件大小、简化安装过程以及确保应用程序使用特定版本的Java运行时。

在这个教程中,我们将使用OpenJDK及其工具,以在Windows上进行操作。但是,这些步骤在Linux和macOS上也适用。

**前置要求**

下载并安装以下软件:

1. JDK:在 https://adoptopenjdk.net/ 下载适用于您的操作系统的最新版本的OpenJDK。

2. Launch4j: 在 http://launch4j.sourceforge.net/ 下载Launch4j压缩包(用于将JAR转换为EXE)。

**步骤1:编译Java源代码**

首先,我们需要编写一个简单的Java应用程序并将其编译为JAR文件。例如,以下是一个名为`HelloWorld.java`的简单Java程序:

```java

public class HelloWorld {

public static void main(String[] args) {

System.out.println("Hello, World!");

}

}

```

使用以下命令将此程序编译为HelloWorld.class:

```

javac HelloWorld.java

```

将其打包为名为`HelloWorld.jar`的JAR文件:

```

jar cvfe HelloWorld.jar HelloWorld HelloWorld.class

```

**步骤2:准备精简的JRE**

1. 创建一个名为`jlink`的目录。

2. 使用`jdeps`命令分析应用程序所需的模块:

```

jdeps --print-module-deps HelloWorld.jar

```

请注意输出的模块名称,我们将在下一步中使用它们。

3. 使用`jlink`命令创建自定义JRE,只包含应用程序所需的模块。将 `` 替换为上一步识别出的模块名称:

```

jlink --no-header-files --no-man-pages --compress=2 --strip-debug --add-modules --output jlink

```

这将创建一个精简版JRE,只包含应用程序需要的功能。

**步骤3:使用Launch4j打包JRE和JAR文件**

1. 解压并运行Launch4j。

2. 在"基本"标签下填写以下信息:

- "输出文件":这将是生成的.EXE文件。例如:HelloWorld.exe

- "jar":这是我们之前创建的JAR文件。例如:HelloWorld.jar

- "不捆绑的JRE路径":从上一步骤生成的精简JRE文件夹(例如`jlink`)。

3. 在"JRE"标签页下配置以下选项:

- "最低版本":<可以设置为您使用的OpenJDK版本>

- "捆绑的JRE路径":与"不捆绑的JRE路径"相同。

4. 单击“构建”按钮以创建有精简JRE的EXE文件。

现在,您已经成功地将应用程序打包成了一个独立的EXE文件,该文件可以在没有预安装Java的计算机上运行。最后,您可以在压缩JRE文件夹和EXE文件后将其分发给其他用户。


相关知识:
vscpp生成exe
在本教程中,我们将介绍如何使用Visual Studio Code (简称:VSCode)的 C/C++ 插件生成Windows可执行文件(.exe)。 Visual Studio Code是一个轻量级、跨平台且易于使用的代码编辑器,广泛应用于各类软件开发
2023-06-14
qt如何生成exe文件并运行
Qt是跨平台的C++应用程序框架,使用Qt来开发程序的一个重要步骤是生成可执行文件(exe文件,在Windows操作系统下)。这篇教程将介绍Qt如何生成exe文件并运行的过程,帮助刚入门的读者了解原理并掌握基本操作。一、环境准备1. 下载并安装Qt: 访问
2023-06-14
pandas打包exe报错
在开发Python应用程序时,我们可能需要将其打包为一个独立的可执行文件(EXE文件)。这使得应用程序可以在没有安装Python环境的情况下在其他系统上运行。在使用pandas库时,打包程序为EXE文件可能会遇到一些困扰,例如报错或缺少依赖。在本文中,我们
2023-06-14
nwjs打包生成exe
NW.js(原名Node-Webkit)是一款开源项目,通过它可以将HTML、CSS、JavaScript等前端技术打包为桌面应用。NW.js基于Chromium和Node.js构建,它使得用JavaScript可以调用Node.js的所有特性,这样Web
2023-06-14
makefile生成exe文件
Makefile生成exe文件的原理与详细介绍简介Makefile是一个构建软件编译、链接及部署的自动化脚本文件。在C、C++等编程语言中,通常开发者会利用Makefile来生成可执行文件(executable文件,即exe文件)。本文将介绍Makefil
2023-06-14
js开发exe
JavaScript 开发 EXE 文件:Node.js 与 Electron近年来,JavaScript 在 web 开发领域取得了巨大成功,同时也在网络之外的地方崭露头角。Node.js 的出现使开发人员能够使用 JavaScript 开发后端及桌面应
2023-06-14