Running our JavaFX application on the JetBrains JDK results in this error:
java.lang.ClassNotFoundException: com.sun.deploy.uitoolkit.impl.fx.HostServicesFactory
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at com.sun.javafx.application.HostServicesDelegate.lambda$getInstance$0(HostServicesDelegate.java:52)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.HostServicesDelegate.getInstance(HostServicesDelegate.java:45)
at javafx.application.HostServices.<init>(HostServices.java:52)
at javafx.application.Application.getHostServices(Application.java:334)
at net.corda.demobench.views.NodeTerminalView$configureWebButton$1$2$1.run(NodeTerminalView.kt:169)
at com.sun.javafx.application.PlatformImpl.lambda$null$5(PlatformImpl.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$6(PlatformImpl.java:294)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
Basically, jre/lib/ext/jfxrt.jar does not contain com.sun.deploy.uitoolkit.impl.fx.* at the very least. But it is still expecting it. Our application works again if we replace JetBrain's jfxrt.jar with the corresponding artifact from Oracle's JDK.
Running our JavaFX application on the JetBrains JDK results in this error:
Basically,
jre/lib/ext/jfxrt.jar
does not containcom.sun.deploy.uitoolkit.impl.fx.*
at the very least. But it is still expecting it. Our application works again if we replace JetBrain'sjfxrt.jar
with the corresponding artifact from Oracle's JDK.