JavaFX 和 jfxwebkit.dll

问题描述

在我的应用程序中,我使用 JavaFX 创建了一个浏览器类型页面显示我的帮助。大多数应用程序是使用 JRE 11.0.10 用 Ja​​va 编写的。我最初使用的是 JavaFX 11.0.2,它运行良好。我的客户希望我们迁移到 JavaFX 11.0.10,我通过 gluon 的订阅服务实现了这一点。在 JavaFX 11.0.10 中,帮助系统会导致整个应用程序崩溃。我已将范围缩小到 jfxwebkit.dll。它适用于 11.0.2 版,但不适用于 11.0.10。

我使用 NetBeans 12.3 并使用其 JLink 创建客户 JRE;但是,出于某种原因,它仍然放入“一些”JavaFX 11.0.2 文件而不是 11.0.10 文件,即使我已经删除了旧版本的 JavaFX。当我用 JavaFX 11.0.10 文件手动替换上述文件时,唯一导致崩溃的是 jfxwebkit.dll。任何帮助将不胜感激。

我无法调试它,因为它可以在 IDE 中运行(不确定它使用的是什么 jfxwebkit)。以下来自“hs_err_pid”文件

Current thread (0x0000024c5830b000):  JavaThread "JavaFX Application Thread" [_thread_in_vm,id=9000,stack(0x000000f7fcd00000,0x000000f7fce00000)]

Stack: [0x000000f7fcd00000,0x000000f7fce00000],sp=0x000000f7fcdfc610,free space=1009k
Native frames: (J=compiled Java code,j=interpreted,Vv=VM code,C=native code)
V  [jvm.dll+0x3a8eb9]
C  [jfxwebkit.dll+0x8b1b0]

Java frames: (J=compiled Java code,Vv=VM code)
j  com.sun.webkit.WebPage.twkCreatePage(Z)J+0 javafx.web
j  com.sun.webkit.WebPage.<init>(Lcom/sun/webkit/WebPageClient;Lcom/sun/webkit/UIClient;Lcom/sun/webkit/PolicyClient;Lcom/sun/webkit/InspectorClient;Lcom/sun/webkit/ThemeClient;Z)V+178 javafx.web
j  javafx.scene.web.WebEngine.<init>(Ljava/lang/String;Z)V+287 javafx.web
j  javafx.scene.web.WebEngine.<init>()V+3 javafx.web
j  javafx.scene.web.WebView.<init>()V+60 javafx.web
j  com.austinnc.utilsjfx.Cbrowser.<init>(Ljava/lang/String;)V+9 com.anc.UtilsJFX
j  com.austinnc.utilsjfx.CHelpdisplayJFX.displayHelp(Ljava/lang/String;)V+12 com.anc.UtilsJFX
j  com.austinnc.optfilegen.coptionFileGenFrame$CHelpEH$1.run()V+90 com.anc.OptionFileGenerator
j  com.sun.javafx.application.PlatformImpl.lambda$runLater$10(Ljava/lang/Runnable;)Ljava/lang/Void;+1 javafx.graphics
j  com.sun.javafx.application.PlatformImpl$$Lambda$58.run()Ljava/lang/Object;+4 javafx.graphics
v  ~Stubroutines::call_stub
J 1183  java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object; java.base@11.0.10 (0 bytes) @ 0x0000024c487cb9a6 [0x0000024c487cb940+0x0000000000000066]
j  com.sun.javafx.application.PlatformImpl.lambda$runLater$11(Ljava/lang/Runnable;Ljava/security/AccessControlContext;)V+7 javafx.graphics
j  com.sun.javafx.application.PlatformImpl$$Lambda$57.run()V+8 javafx.graphics
j  com.sun.glass.ui.invokelaterdispatcher$Future.run()V+4 javafx.graphics
v  ~Stubroutines::call_stub
j  com.sun.glass.ui.win.WinApplication._runLoop(Ljava/lang/Runnable;)V+0 javafx.graphics
j  com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(ILjava/lang/Runnable;)V+8 javafx.graphics
j  com.sun.glass.ui.win.WinApplication$$Lambda$46.run()V+12 javafx.graphics
j  java.lang.Thread.run()V+11 java.base@11.0.10
v  ~Stubroutines::call_stub

siginfo: EXCEPTION_ACCESS_VIOLATION (0xc0000005),reading address 0x0000000000000000

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)