免费试用

跨平台小程序在线开发工具,用做网页的技术做小程序,兼容微信、支付宝、抖音、快手、百度等主流小程序平台!

java打包exe没jvm

在本教程中,我们将了解如何将Java应用程序打包成一个不依赖于JVM的独立exe文件。使用这种方法,您开发的Java应用程序可以在计算机上运行,即使该计算机上没有安装Java运行时环境(JRE)也可以正常运行。

#### 原理

Java应用程序是跨平台的,可由JVM在不同的操作系统中运行。然而,这也意味着Java应用程序的运行依赖于已安装的JRE。为了让Java应用程序成为独立的exe文件,我们需要创建一个可执行文件,其中包括:

1. 自包含的JRE:一个针对目标操作系统的、内嵌在打包后的exe文件内的Java运行环境。

2. 应用程序启动器:用于启动并运行Java应用程序的原生代码。

这意味着Java应用程序将直接依赖于打包后的exe文件及其内嵌的JRE,而不再需要在计算机上安装Java运行时环境。

#### 详细步骤

我们将使用开源项目Launch4j来将Java应用程序打包成不依赖JVM的exe文件。以下是操作步骤:

1. 下载并安装 [Launch4j](http://launch4j.sourceforge.net/)。

2. 创建一个简单的Java应用程序,例如HelloWorld.java:

```

public class HelloWorld {

public static void main(String[] args) {

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

}

}

```

3. 使用`javac`命令编译Java源代码文件:

```

javac HelloWorld.java

```

编译完成后,会得到一个HelloWorld.class文件。

4. 运行Launch4j并创建一个新项目。

5. 在Launch4j的“Basic”选项卡中,按以下的方式填写:

- Output file: 选择您想要保存的exe文件路径,例如:`HelloWorld.exe`。

- Jar: 选择包含您的Java应用程序的JAR文件。

- Don't wrap the jar, launch only: 不选中此选项。

- Change dir: 不选中此选项。

6. 在“Classpath”选项卡中,不要修改任何选项。

7. 在“JRE”选项卡中,您可以选择您的应用程序所需的最低Java运行时版本。不过,这不是必需的,因为我们将内嵌JRE。

8. 在“Version Info”选项卡中,您可以为exe文件添加版本信息,例如公司名称、产品名称、版权等。这不是必需的,但会使您的exe文件看起来更专业。

9. 保存您的Launch4j项目,然后点击“Build wrapper”按钮。这将在指定的输出位置生成一个exe文件。

10. 使用 [jlink](https://docs.oracle.com/en/java/javase/11/tools/jlink.html) 来为Java应用程序创建自定义JRE。你将需要根据你编写的应用程序的模块要求来选择合适的模块。运行以下命令:

```

jlink --module-path $JAVA_HOME/jmods --add-modules java.base --output custom_jre

```

其中,`$JAVA_HOME`是Java安装目录的路径,`java.base` 是应用程序所需的模块,`custom_jre`则是将要创建的自定义JRE的目录名。

11. 将生成的exe文件和 `custom_jre` 文件夹打包分发给用户。用户在解压后,即可双击exe文件运行您的Java应用程序,无需安装JVM。

至此,您已成功将Java应用程序打包成一个不依赖JVM的独立exe文件。这样的应用程序更方便用户使用,并能避免JVM版本冲突等问题。当然,不同操作系统上的运行还是需要为每个目标操作系统创建对应的exe文件。


相关知识:
百度小程序开发资料怎么弄
百度小程序是一种基于百度智能云开发的轻量级应用程序,可以在百度App中运行,为用户提供各种功能和服务。下面将为你详细介绍百度小程序的开发资料和原理。1. 开发准备在进行百度小程序开发之前,你需要进行以下准备: - 注册百度开发者账号:访问百度智能小程序
2023-08-23
阿里小程序模板开发
阿里小程序是一种快速开发小程序的方式,可以帮助开发者快速搭建小程序。阿里小程序的模板开发,也称为模板驱动开发,是阿里小程序开发的一种方式,具有很高的代码复用性和开发效率。一、什么是阿里小程序模板开发阿里小程序模板开发是一种基于模板的小程序快速开发方式。开发
2023-08-09
阿里小程序开发框架
阿里小程序开发框架是基于阿里的 Flutter 框架所开发的一种适用于小程序开发的框架,它可以帮助开发者更方便、快速地创建小程序应用。下面是阿里小程序开发框架的原理及详细介绍:一、框架架构阿里小程序开发框架的架构可以分为两个层次:小程序底层运行时与小程序框
2023-08-09
安徽商超便利小程序开发省钱
随着移动互联网和智能手机的普及,小程序逐渐成为了现代生活中越来越重要的一部分。尤其是在疫情期间,小程序成为了人们更加便捷高效的购物方式。在这种背景下,安徽的商超便利小程序应运而生。开发商超便利小程序可以让用户随时随地购买到所需的商品,并且可以享受到更便捷、
2023-08-09
vr全景小程序开发
VR(Virtual Reality,虚拟现实)全景小程序是一种基于微信开发者工具及小程序运行环境的应用程序,可以通过小程序在微信中实现基于全景VR技术的展示和交互。相比传统VR展示,VR全景小程序开发具有更加便捷、易用、灵活的特点,可以在不受时间、空间限
2023-08-09
picker小程序开发
Picker是一种非常有用的小程序组件,它可以帮助用户从一系列选项中选择一个或多个选项。Picker组件提供了非常灵活的显示方式和丰富的选项配置,同时也是小程序开发中非常常见和重要的一部分。下面,我将针对Picker小程序开发进行原理或详细介绍。## Pi
2023-08-09
nba在线直播小程序开发
NBA在线直播小程序是一种基于微信小程序平台开发的应用程序,旨在为用户提供高清实时的NBA比赛视频直播服务。具体上,这个小程序可以通过拉取第三方视频流的方式,将NBA正常赛季以及季后赛等比赛内容呈现在用户的手机、平板等移动设备上。同时,它也提供了比分、战绩
2023-08-09
html5开发微信小程序电话
微信小程序是一种轻量级的应用程序,它可以在微信内部运行,而不需要用户去下载安装。小程序本质上是基于web技术开发的,因此使用html5技术也可以开发微信小程序。要开发一个html5微信小程序的电话功能,需要通过微信小程序提供的api来实现。主要涉及到微信小
2023-08-09
app小程序开发包子的关注
随着移动互联网的普及,APP和小程序已经成为了用户获取信息、娱乐消遣、社交交流等重要的手段。APP和小程序的开发也已成为了一个热门的领域。其中一款名为“包子”的小程序备受关注。包子小程序是一个微信小程序,主要功能包括线上购物、点餐、预约等,用户可以在微信平
2023-08-09
app小程序开发需要懂前端吗
App小程序开发需要懂得前端知识,因为小程序的本质就是一个Web应用程序,前端技术是其开发的核心所在。本文将从小程序的定义、前端技术与小程序的关系、小程序前端技术的应用三个方面详细介绍。## 小程序的定义小程序是由微信等平台提供的一种应用,其体积小、加载快
2023-08-09
微信小程序傻瓜式开发工具原理
微信小程序傻瓜式开发工具是微信公司推出的一款开发工具,其目的是为了让开发者可以更加轻松地开发自己的小程序。本文将详细介绍微信小程序傻瓜式开发工具的原理及相关细节。首先,我们需要理解小程序傻瓜式开发工具的定位。它并不是一款全能的开发工具,而是一个专门为小程序
2023-05-26
商城小程序软件开发工具
随着移动设备的普及,移动应用开发越来越受到开发者们的关注。其中,小程序是近年来最为流行的开发形式之一。小程序是一种轻量级的应用,它只需通过微信、支付宝等平台即可运行,无需用户安装即可使用。因此,小程序具有极佳的用户体验和开发效率,已经成为各大企业以及个人开
2023-05-26