Javafx jfx:buildjar工作正常jfx:native有些函数不工作,如何调试exe?

Javafx jfx:buildjar工作正常jfx:native有些函数不工作,如何调试exe?,javafx,jar,exe,Javafx,Jar,Exe,基于以下内容使用javafx构建Im应用程序:zulu8.38.0.13-ca-fx-jdk8.0.212-win_x64 当我构建jfx:native并从exe文件运行程序时,一些函数无法工作,应用程序崩溃 当我通过jar运行它并命令pompt时,一切都很好 如何调试exe文件以检测错误 我在运行时文件夹中找到日志文件: 当前线程(0x000001881a27d800):JavaThread“thread-16” 本机中的线程,id=5508, 堆栈(0x0000004a95900000,0x

基于以下内容使用javafx构建Im应用程序:zulu8.38.0.13-ca-fx-jdk8.0.212-win_x64

当我构建jfx:native并从exe文件运行程序时,一些函数无法工作,应用程序崩溃

当我通过jar运行它并命令pompt时,一切都很好

如何调试exe文件以检测错误

我在运行时文件夹中找到日志文件:

当前线程(0x000001881a27d800):JavaThread“thread-16” 本机中的线程,id=5508, 堆栈(0x0000004a95900000,0x0000004a95a00000)]

siginfo:ExceptionCode=0xc0000005,读取地址0x0000000019d6c1a8

寄存器:RAX=0x0000000019d6c1a8,RBX=0x0000004a959feeb0, RCX=0x00007ffb7f5fab84,RDX=0x0000000000000000 RSP=0x0000004a959fee40, RBP=0x0000004a959fefc0,RSI=0x000001881a27da50,RDI=0x00000000000008dc R8=0x0000004a959fed38,R9=0x0000004a959fee30, R10=0x0000000000000000,R11=0x0000000000000246 R12=0x0000004a959ff070, R13=0x000001881a614090,R14=0x0000004a959fef70,R15=0x000001881a27d800 RIP=0x000000007110b5db,EFLAGS=0x000000000010202

堆栈顶部:(sp=0x0000004a959fee40)0x0000004a959fee40:
0000004a959fee68 0000000000000000 0x0000004a959fee50:
00000000 7110B230 000000 4A959FEF70 0x0000004a959fee60:
000001881a614090 000000000000000 4 0x0000004a959fee70:
000001881a27da50 0000000000000 8DC 0x0000004a959fee80:
0000004a959fefc0 00000000 71112590 0x0000004a959fee90:
000001881A27D8000000004A959FEF70 0x0000004a959feea0:
00000 1881A614090 00000 1881A27DA50 0x0000004a959feeb0:
0000004a959ff070 0000000000000 8DC 0x0000004a959feec0:
0000004a959fefc0 00000000 63358D94 0x0000004a959feed0:
000001881a614090 0000000000000000 0x0000004a959feee0:
00000000 71113500 00000000 71113BE8 0x0000004a959feef0:
0000004a959fef20 00000000 71112641 0x0000004a959fef00:
0000004a959fee90 00000000 40000000 0x0000004a959fef10:
000000000000000000000000000000x0000004A959FEF20:
0000004a959fefc0 00000000 71101595 0x0000004a959fef30:
00000000000000 1C000001881A27DA50

说明:(pc=0x000000007110b5db)0x000000007110b5bb:C50F 1f 40 00 55 57 56 53 48 83 ec 28 48 8b 05 0x000000007110b5cb:39 33 01 00 48 89 cb 48 85 c0 0f 84 c5 00 00 0x000000007110b5db:8b 38 85 ff 0f 88 ab 00 00 48 8b 05 1c 33 01 0x000000007110b5eb:00 48 85 C00F 84 bc 00 00 8b 30 85 f6 74 57

寄存器到内存映射:

RAX=0x0000000019d6c1a8是未知值,RBX=0x0000004a959feeb0是未知值 指向线程的堆栈:0x000001881a27d800 RCX=0x00007ffb7f5fab84是未知值,RDX=0x0000000000000000是未知值 未知值RSP=0x0000004a959fee40指向堆栈中,用于 线程:0x000001881a27d800 RBP=0x0000004a959fefc0指向 线程的堆栈:0x000001881a27d800 RSI=0x000001881a27da50是一个 未知值RDI=0x00000000000008dc是未知值R8 =0x0000004a959fed38指向线程的堆栈:0x000001881a27d800 R9=0x0000004a959fee30指向堆栈 对于线程:0x000001881a27d800 R10=0x0000000000000000是未知的 值R11=0x0000000000000246是未知值 R12=0x0000004a959ff070指向线程的堆栈: 0x000001881a27d800 R13=0x000001881a614090是未知值 R14=0x0000004a959fef70指向线程的堆栈: 0x000001881a27d800 R15=0x000001881a27d800是一个线程

堆栈:[0x0000004a95900000,0x0000004a95a00000], sp=0x0000004a959fee40,可用空间=1019k本机帧:(J=compiled) Java代码,j=解释的,Vv=虚拟机代码,C=本机代码)C 0x000000007110b5db C 0x0000000071112590 C 0x0000000071101595 C 0x00000188023a9c6e

Java框架:(J=编译的Java代码,J=解释的,Vv=虚拟机代码)J jssc.SerialNativeInterface.openPort(Ljava/lang/String;Z)J+0j jssc.SerialPort.openPort()Z+65 j scheduling.services.communication.communication$2.call()Lscheduling/services/communication/communication$ConnectionState+98 J scheduling.services.communication.communication$2.call()Ljava/lang/Object+1. j javafx.concurrent.Task$TaskCallable.call()Ljava/lang/Object+26 j java.util.concurrent.FutureTask.run()V+42 j java.lang.Thread.run()V+11v~StubRoutines::call_stub


尝试从命令行启动你的应用程序,它会显示错误,如jar

已测试,comand pompt在启动应用程序时为空,我是否应该添加一些参数?