我正在将 Android 应用程序移植到 javaFX 以进行 Windows 部署,我对 javaFX 和桌面部署很陌生,但对 java 来说并不陌生。
该应用程序包含一个 WebView,它加载通过 Json 从服务器获取的 url(因此本质上可以是任何内容)。
openJDK 14、openJfx 16、intellij idea Ultimate 2021.1.3、gradle:插件:org.beryx.jlink 和 org.openjfx.javafxplugin
当我在开发和测试中(在 Windows 10 计算机上)运行该程序时,效果很好,但是当它在 Windows 计算机(到目前为止的任何 Windows 10)上打包和部署时,我得到一个“java.lang.Throwable:SSL 握手”加载页面时出现“失败”异常。
这是堆栈跟踪:
[ERROR] 2021-07-14 14:13:53.737 [JavaFX Application Thread] MediaElementWeb - WebView Failed:
java.lang.Throwable: SSL handshake failed
at javafx.scene.web.WebEngine$LoadWorker.describeError(WebEngine.java:1440) ~[javafx.web:?]
at javafx.scene.web.WebEngine$LoadWorker.dispatchLoadEvent(WebEngine.java:1379) ~[javafx.web:?]
at javafx.scene.web.WebEngine$PageLoadListener.dispatchLoadEvent(WebEngine.java:1240) ~[javafx.web:?]
at com.sun.webkit.WebPage.fireLoadEvent(WebPage.java:2524) ~[javafx.web:?]
at com.sun.webkit.WebPage.fwkFireLoadEvent(WebPage.java:2369) ~[javafx.web:?]
at com.sun.webkit.network.URLLoaderBase.twkDidFail(Native Method) ~[javafx.web:?]
at com.sun.webkit.network.URLLoader.notifyDidFail(URLLoader.java:799) ~[javafx.web:?]
at com.sun.webkit.network.URLLoader.lambda$didFail$6(URLLoader.java:782) ~[javafx.web:?]
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:447) ~[javafx.graphics:?]
at java.security.AccessController.doPrivileged(AccessController.java:391) ~[?:?]
at …Run Code Online (Sandbox Code Playgroud)