当前位置:首页 > Java

java 如何打包成exe

2026-02-04 20:52:06Java

使用 Launch4j 打包 Java 程序为 EXE

Launch4j 是一个跨平台工具,可以将 Java 应用程序打包为 Windows 可执行文件。它支持生成 32 位和 64 位 EXE 文件,并可以嵌入 JRE 或指定外部 JRE 路径。

下载并安装 Launch4j 后,打开其 GUI 界面进行配置:

  • 在 "Basic" 选项卡中设置输出 EXE 文件路径、Jar 文件路径和主类名
  • 在 "JRE" 选项卡中指定最小和最大 JRE 版本要求
  • 在 "Version info" 选项卡中可以添加 EXE 文件的版本信息

配置完成后点击 "Build wrapper" 生成 EXE 文件。生成的 EXE 会尝试使用系统 JRE 运行,如果找不到则会显示错误信息。

使用 JPackage 工具(JDK 14+)

JDK 14 引入了 jpackage 工具,可以直接将 Java 应用程序打包为原生安装包或可执行文件。这是目前最官方的打包方式。

基本命令格式:

jpackage --input target/ --main-jar your-app.jar --main-class com.example.Main --type exe --name MyApp --dest output/

高级选项可以指定图标、JVM 参数等:

jpackage --input target/ --main-jar app.jar --main-class com.example.Main --type app-image --name MyApp --dest output/ --icon app.ico --java-options "-Xmx2048m"

jpackage 会生成一个包含 JRE 的完整应用程序包,确保在没有 Java 环境的机器上也能运行。

使用 Excelsior JET 编译为原生 EXE

Excelsior JET 是一个商业工具,可以将 Java 程序编译为真正的原生可执行文件,不需要 JRE 就能运行。

使用步骤:

  1. 安装 Excelsior JET 并打开其控制台
  2. 创建新项目并指定主类和 Jar 文件
  3. 配置优化选项和目标平台
  4. 执行编译过程

这种方法生成的 EXE 文件性能接近原生代码,但编译过程可能需要调整代码以解决兼容性问题。

使用 GraalVM Native Image

GraalVM 提供了将 Java 程序编译为原生可执行文件的能力,支持 Windows、Linux 和 macOS。

安装 GraalVM 并设置环境变量后,使用以下命令:

native-image -jar your-app.jar --no-fallback -H:Name=output.exe

需要注意:

  • 程序可能需要调整以适应 AOT 编译限制
  • 反射、动态类加载等功能需要额外配置
  • 生成的 EXE 文件启动速度极快,但体积较大

注意事项

所有打包方法都应考虑:

  • 程序依赖的外部资源路径问题
  • JVM 参数和内存设置
  • 目标系统的位数匹配(32/64位)
  • 数字签名和安全证书
  • 安装程序制作(对于需要分发的应用)

对于商业软件,建议使用 jpackage 或 Excelsior JET 生成包含安装程序的完整分发包。开源项目可以考虑 Launch4j 或 GraalVM 方案。

java 如何打包成exe

标签: javaexe
分享给朋友:

相关文章

java如何

java如何

Java 基础语法 Java 是一种面向对象的编程语言,语法相对严谨。每个 Java 程序必须包含一个 main 方法作为程序入口。以下是一个简单的 Java 程序示例: public class…

如何使用java

如何使用java

安装Java开发环境 下载并安装Java Development Kit(JDK),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME指向JDK安装路径…

java如何安装

java如何安装

安装Java的步骤 下载Java开发工具包(JDK) 访问Oracle官方网站或OpenJDK项目页面下载适合操作系统的JDK版本。Oracle JDK适用于商业用途,OpenJDK是开源版本。选…

如何打开java

如何打开java

打开 Java 程序的方法 通过命令行运行 Java 程序 确保已安装 Java Development Kit (JDK) 并配置环境变量。使用 javac 编译 .java 文件,生成 .clas…

如何学java

如何学java

学习Java的基础知识 Java是一门面向对象的编程语言,掌握基础语法是入门的关键。需要了解变量、数据类型、运算符、控制结构(如if-else、for循环、while循环)、数组等概念。可以通过官方文…

java如何自学

java如何自学

确定学习目标和路径 自学Java需要明确目标,例如开发Web应用、Android应用或后端服务。根据目标选择学习重点,如Java基础、Spring框架或Android开发。制定阶段性计划,从基础语法到…