Oracle's removal of JavaFX from the Java Development Kit (JDK) 11 has given rise to the first open standalone release of the Java-based rich client technology, JavaFX 11, which will avail developers a client application platform.
The JavaFX 11 is an open source, next generation platform for desktop, mobile and embedded systems built on Java; which comes as a collaborative effort from many independent developers and companies with the goal of producing an efficient and modern, fully featured toolkit for building rich client applications.
While Oracle claimed the removal was inline with its overall desire to get rid of noncore modules from the Java Development Kit or stand the JDK as independent modules.
The standalone JavaFX modules can no longer have permissions by default, as the modules are now loaded by the application class loader, while applications that sort to run with a security manager enabled by default will need to specify a custom policy file, using "-Djava.security.policy", to grant permissions to each of the JavaFX.
Albeit, the now open source JavaFX will be able to use GTK 3 by default on Linux platforms where the GTK 3 library is present, which prior to JavaFX 11, the GTK 2 library was the default.
The new features in JavaFX include the public FX Robot API, which has been added to support simulating user interaction such as typing keys on the keyboard and using the mouse as well as capturing graphical information.
And the known issues with this release is that JavaFX crashes with OpenJDK 11 on Ubuntu 18.04 Linux machines when the XWayland window server is enabled whenever the FX window toolkit code uses GTK 3 on Linux, which is the default for JavaFX 11.
It is however recommended to use the Xorg server instead of the Wayland server when running JavaFX applications as a workaround.