生成脱离jdk环境执行java代码的EXE文件

资源

Ico图片生成网址

http://ico.sevem.cn/index.php?action=make

exe4j软件下载

https://www.ej-technologies.com/download/exe4j/files
在这里插入图片描述
自行安装即可

EXE4J使用方式

一、项目打jar包

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

完成后去项目的\out\artifacts[项目名]_jar目录下找到生成的jar包

建议将生成的jar包放到一个新的文件夹,因为这个文件夹下还需要放项目运行的jre包
在这里插入图片描述

二、生成exe文件(脱离jdk环境可执行)
1.安装与注册exe4j

密钥:
A-XVK209982F-1y0i3h4ywx2h1
A-XVK267351F-dpurrhnyarva
A-XVK246130F-1l7msieqiwqnq
A-XVK249554F-pllh351kcke50
A-XVK238729F-25yn13iea25i
在这里插入图片描述

2.选择项目类型

在这里插入图片描述

3.配置应用信息

在这里插入图片描述

4.配置可执行程序信息

在这里插入图片描述

5.配置jar包

在这里插入图片描述
在这里插入图片描述

6.选择启动类

在这里插入图片描述

在这里插入图片描述

7.设置项目运行环境(项目脱离本机jdk运行的关键

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

8.配置启动画面在这里插入图片描述
9.配置程序语言

直接下一步
在这里插入图片描述

10.编译在这里插入图片描述
11.完成

在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 要在64位JDK环境下调用32位DLL文件,您需要执行以下步骤: 1. 确定您的操作系统是否为64位,如果是,请下载并安装32位Java运行时环境(JRE)。 2. 在32位Java JRE中编写代码,以便它可以调用32位DLL文件。请注意,由于32位DLL文件不受64位Java JRE支持,因此必须使用32位Java JRE。 3. 将32位DLL文件复制到您的计算机上,并确保它们位于Java可以找到的位置。可以将其复制到Java库路径或系统路径中。 4. 将32位DLL文件Java代码连接起来。您可以使用Java Native Interface(JNI)来实现这一点。 JNI允许Java代码调用本地库(如DLL文件),并且可以在32位Java JRE和64位Java JRE中使用。 5. 在Java代码中使用System.loadLibrary()函数来加载32位DLL文件。 6. 测试您的代码并确保它可以正确调用32位DLL文件。 ### 回答2: 在64位JDK环境中调用32位DLL文件的问题可以通过以下步骤解决: 1. 确认操作系统:首先需要确保操作系统是64位版本的。如果操作系统是32位的,那么无论使用哪个版本的JDK,都只能调用32位DLL文件。 2. 安装32位JDK:在64位JDK环境中调用32位DLL文件,需要安装32位的JDK。因为32位DLL文件是由32位JDK生成的,所以只有相同位数的JDK能够正确地加载并调用DLL文件。 3. 配置环境变量:将32位JDK的安装路径添加到系统的环境变量中。这样,可以确保在命令行或其他开发工具中使用32位JDK进行编译和运行程序。 4. 设置Java库路径:在Java代码中,使用System.setProperty("java.library.path", "DLL文件路径")指定DLL文件的路径。这样,JVM会在指定的路径中找到并加载32位DLL文件。 5. 使用32位JRE:如果使用的是JRE而不是JDK,同样需要安装32位的JRE,并在环境变量中配置正确的JRE路径。 需要注意的是,64位JDK环境中调用32位DLL文件可能会导致兼容性问题。因此,建议尽可能使用相同位数的JDK和DLL文件。如果DLL文件是由第三方提供的,可以尝试联系DLL文件的提供方,获取64位版本的DLL文件。 总结起来,解决64位JDK环境中调用32位DLL文件的问题,需要确认操作系统位数,安装相同位数的JDK或JRE,并配置正确的环境变量和Java库路径。 ### 回答3: 要在64位JDK环境中调用32位DLL文件,我们需要采取以下解决方法: 1. 选择32位JDK环境:如果可能的话,可以考虑安装32位JDK环境,因为32位JDK环境能兼容32位DLL文件。这样就可以直接使用32位JDK环境调用32位DLL文件,无需做其他处理。 2. 使用Java Native Interface(JNI):JNI是Java提供的一种机制,允许Java代码调用本地语言的函数。通过编写桥接函数,将Java代码与DLL文件连接起来。在编写JNI函数时,需要根据DLL文件的调用规范(例如C调用规范)进行适当的声明和封装。 3. 使用Java Native Access(JNA)库:JNA是一个开源库,可以简化Java调用本地函数的过程。通过使用JNA库,在Java代码中声明和定义DLL文件的函数和数据结构,使得可以直接调用32位DLL文件中的函数。在JNA中,没有必要编写JNI函数,而是通过直接调用DLL文件的函数来实现功能。 4. 通过进程间通信(IPC):如果以上方法都无法解决问题,可以考虑通过IPC与一个32位进程进行通信。在32位进程中加载32位DLL文件,并提供接口让64位JDK环境中的Java代码调用。可以使用进程间通信机制,如共享内存或管道,实现Java代码与32位进程之间的数据交换和通信。 以上是解决64位JDK环境中调用32位DLL文件的一些方法。根据具体情况选择适合的解决方案,并根据需求进行详细实施和测试。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值