免费试用

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

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文件。


相关知识:
webh5小程序开发
Web和H5是目前互联网领域中非常热门的技术,而小程序则是近年来的新兴概念。那么,WebH5小程序开发具体是什么呢?本文将为大家详细介绍WebH5小程序开发的原理和流程。一、Web开发Web开发是指利用网页技术(HTML、CSS、JavaScript等)来
2023-08-09
vue 开发小程序
Vue 是一款流行的前端框架,它提供了诸如组件化、虚拟 DOM 等特性,让我们可以用一种更加高效的方式构建用户界面。而小程序则是一种轻量级的应用,它直接运行在客户端,避免了服务端渲染的开销,因此具有启动快、响应快、用户体验好等优点。那么把 Vue 框架应用
2023-08-09
uniapp小程序开发视频佛系更新
Uniapp是一个基于Vue.js开发的跨平台开发框架,可以用同一份代码实现多端运行,包括小程序、H5、App等平台。随着Uniapp的逐渐流行,越来越多的开发者选择使用Uniapp进行小程序开发。在这篇文章中,我将详细介绍Uniapp小程序开发的原理和实
2023-08-09
linux 小程序开发
Linux 小程序开发是指在 Linux 系统下开发一些轻量级的应用程序,这些程序通常仅包含基本的 UI 和功能,运行速度快,启动时间短,占用资源少,不依赖其他软件包,容易维护。本文将介绍 Linux 小程序的原理和开发方法,并给出一个示例。一、实现原理L
2023-08-09
java开发微信小程序的流程
Java开发微信小程序需要遵循以下步骤:一、注册微信小程序账号如果您要开发微信小程序,首先需要去微信公众平台注册开发者账号,然后在小程序管理后台申请小程序,成功审核后,便可以开始开发。二、准备开发环境微信小程序采用的是一种类似于 HTML/CSS/Java
2023-08-09
crmeb开发小程序
CRMEB是一款基于PHP的开源电商系统,具有高度灵活性和可扩展性,支持多商户、多门店、多国语言、多货币和跨境电商等多种功能。在开发小程序时,可以基于CRMEB进行开发,实现小程序的快速搭建和运行。下面详细介绍CRMEB开发小程序的原理和方法。一、CRME
2023-08-09
浙江旅游小程序开发工具
浙江旅游小程序是一个集旅游资讯、导游服务、景区介绍、景区预订、交通出行等功能的一体化移动应用程序。为了支持该应用程序的开发,浙江旅游局开发了浙江旅游小程序开发工具。浙江旅游小程序开发工具基于微信小程序开发技术,在此基础上进行了相应的扩展和优化。该开发工具主
2023-05-26
小程序开发工具导包
小程序开发工具是一款可视化的代码编写工具,它为我们提供了一些方便的功能,比如语法提示、调试工具、数据模拟、样式编辑器等等。在使用小程序开发工具时打包是一个必不可少的环节。下面是小程序开发工具导包的详细介绍。一、什么是导包在编程中,我们常常需要使用到其他人写
2023-05-26
微信小程序领券功能开发工具
微信小程序作为近年来新兴的一种应用场景,其功能越来越丰富,像领券功能一样的活动营销工具也被越来越多地应用于小程序中。那么,如何开发微信小程序领券功能呢?下面介绍一种常用的开发工具和原理。一、前置条件在开发微信小程序优惠券领取功能之前,我们需要先具有以下前置
2023-05-26
湖北k歌小程序开发工具在哪里
湖北K歌小程序是一款专业唱歌平台,通过小程序的方式提供了歌曲在线收听和在线录制的服务。不仅如此,还提供了录制后自动修音和混音的功能,仿佛进入了真正的录音棚一般,深受用户喜爱。那么,这款小程序背后的开发工具又是什么呢?一、开发工具:小程序开发者工具湖北K歌小
2023-05-22
百色可视化小程序开发工具有哪些品牌
百色可视化小程序开发工具是一类将传统的代码式开发转化为可视化UI的工具,其主要目的是让非专业程序员也能够轻松地开发小程序。在现代互联网的快速发展中,小程序已经成为了非常重要的一部分,百色可视化小程序开发工具也越来越多地被人们所关注和使用。本文将详细介绍几款
2023-05-22
安卓开发微信小程序开发工具
微信小程序是一种新型的移动应用程序,与传统的原生App不同,它可以在微信中直接使用,无需下载安装。随着智能手机的普及和用户对“轻应用”的需求增加,微信小程序已成为越来越多企业和开发者的选择。安卓开发微信小程序的工具主要是微信小程序开发者工具。该工具是一款免
2023-05-22