免费试用

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

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


相关知识:
安达汽车小程序开发
安达汽车小程序是一款基于微信平台的应用程序,主要面向安达汽车的潜在客户和现有客户,在线展示安达汽车的各类汽车以及相关服务,提供在线客服和购车服务等。下面将详细介绍安达汽车小程序的开发原理和实现。安达汽车小程序的开发可以分为以下几个步骤:1.申请小程序账号申
2023-08-09
安徽知识付费类小程序开发语言是什么类型
安徽知识付费类小程序开发语言主要是使用小程序开发框架中的WXML和WXSS语言,以及JavaScript语言。首先,WXML是小程序框架中提供的一种类似于HTML的标记语言,用于描述小程序的结构。WXML支持常见的HTML标记,比如div、span、inp
2023-08-09
zion小程序开发
随着移动互联网发展,小程序也逐渐成为了一个热门的开发形式,作为一种专为移动设备而生的应用程序,它集成了许多网络技术和应用领域的最佳实践,提供了丰富的功能和优质的用户体验。其中,zion小程序就是一种非常有前途的开发模式,本文将对其进行详细介绍。一、什么是z
2023-08-09
php开发微信小程序毕业论文
随着手机的普及以及移动互联网的发展,微信小程序成为了人们日常生活中的一个不可或缺的应用。相对于传统的APP,微信小程序具有启动快、使用便捷、省流量等优点,因此受到了用户的欢迎。小程序开发主要分为前端和后端两大部分,其中后端一般采用Java、PHP、Node
2023-08-09
php小程序开发流程
PHP小程序开发是一种快速搭建轻量级应用的技术,主要用于快速迭代和快速验证想法,通常用于一些小公司、个人创业者等领域。在这里,我们将对PHP小程序开发的流程进行详细介绍。第一步:确定需求并进行规划在进行PHP小程序开发之前,首先需要确定项目的需求,包括需求
2023-08-09
ios开发苹果小程序
苹果小程序是近年来苹果公司推出的一种新型移动应用程序,是集成于iOS操作系统中的轻量级应用程序,通过Web技术进行开发,这其中主要运用HTML、CSS、JavaScript和SVG等Web前端技术。小程序依赖于Safari浏览器内核的渲染引擎,因此它的界面
2023-08-09
go编程开发exe程序
题目:Go 编程开发 exe 程序 - 原理与详细介绍Go 语言(也称 Golang)是一种现代编程语言,旨在简化编程任务并提高软件开发速度。通过 Go 语言,您可以创建独立的可执行文件(exe 程序),以便在 Windows、macOS 和 Linux
2023-05-26
有没有那种可视化小程序开发工具
可视化小程序开发工具是一类基于图形化界面操作,以便于用户快速开发小程序的工具,提供了可视化的布局、样式和数据操作,让用户无需编写代码也能快速构建小程序。以下是一些常见的可视化小程序开发工具及其原理和特点。1. 微信开发者工具微信开发者工具是微信官方提供的一
2023-05-26
小程序开发工具怎么放相片
小程序开发工具是用来开发和维护小程序的工具,开发者可以在其中进行代码编写、预览、调试和上传等操作。在小程序中,放置相片是非常常见的操作,比如说用于展示商品、用户信息、活动照片等等。那么在小程序开发工具中,我们该如何放置相片呢?下面就详细介绍一下。一、放置相
2023-05-26
微信小程序开发工具怎么换行
在微信小程序的开发中,我们经常需要在代码中添加换行,来使代码更加清晰易读。但是,在微信小程序的开发工具中,直接按下回车键并不能实现换行的效果。那么,应该怎样来实现微信小程序开发工具中的换行呢?首先,让我们来了解一下微信小程序开发工具背后的原理。微信小程序开
2023-05-26
微信小程序客户端ui开发工具
微信小程序作为一种新型的轻量级应用模式,受到了越来越多开发者的青睐和喜爱。微信小程序客户端 ui 开发工具是一种可视化的开发工具,主要用于微信小程序的前端 ui 开发。下面将为大家详细介绍微信小程序客户端 ui 开发工具的原理和特点。一、微信小程序客户端u
2023-05-26
广西智能硬件类小程序开发工具有哪些
随着智能硬件产业的快速发展,小程序作为代表性的轻量级应用也得到了广泛应用。在广西地区,许多企业和开发者开始重视智能硬件小程序开发,尝试开发适用于智能硬件的小程序。本文将介绍几种广西智能硬件小程序开发工具及其原理或详细介绍。1. 微信小程序开发工具微信小程序
2023-05-22