使用exe4j Wizard和Inno Setup Compiler工具打包Java文件和exe遇到的在其他存在存在jre环境的电脑运行出现bug的解决思路

目录

背景

涉及到的打包工具、串口通讯工具和包

解决


背景


 记录一下在使用Java开发串口调试工具的时候发现,将程序打包成可以在无jre环境运行exe程序的时候,发现的一个问题并且解决。

我遇到的问题是由于使用RXT串口通讯包里面需要复制 rxtxParallel.dll 和 rxtxSerial.dll 到 C:\Program Files\Java\jdk1.8.0_241\jre\bin 下,而使用Inno Setup Compiler工具打包的jre环境就是在C:\Program Files\Java\jdk1.8.0_241\jre这个文件夹。

打包完毕后再无jre环境下能够正常安装程序,但是在电脑本身已经存在jre环境的情况下,程序会默认使用系统已经配置的jre进行程序执行。从而导致打包的程序无法运行,因为找不到rxtxParallel.dll 和 rxtxSerial.dll这俩个可执行文件。

涉及到的打包工具、串口通讯工具和包

以下是我开发的时候参考的帖子和工具

  1. RTX工具和使用详情
  2. Java打包成可运行exe工具和使用详情
  3. 串口模拟工具和串口调试工具和使用详情

解决

当我们在有jre环境,但是jre\bin文件夹下并没有 rxtxParallel.dll 和 rxtxSerial.dll 这俩个可执行文件的时候,会出现以下报错:

java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path thrown while loading gnu.io.RXTXCommDriver
Exception in Application init method
java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值