JavaFX 14 est désormais accessible au public, mettant à jour le framework d'interface graphique multiplate-forme qui peut sur une base de code unique s'exécuter sur les ordinateurs, les appareils intégrés, iOS et Android.
La release est une autre étape importante dans le monde post-mortem dynamique puisque Java serait "mort" sur le bureau. L'ingénieur logiciel Gerrit Grunwald a couvert cette évolution dans une conférence précédente, "Not dead yet - Java on the desktop." Contrairement au film de James Bond reporté No Time to Die, Java n'a "pas le temps de mourir" car il est largement adopté et en pleine croissance. Depuis le découplage de JavaFX en tant que framework en dehors de Java, une communauté notable a pris en charge la maintenance avec l'adhésion de Microsoft, Gluon, Pivotal et d'autres. JavaFX 14 comprend des améliorations notables, notamment la prise en charge de HTTP/2 dans le composant WebView. WebView est un composant de type navigateur Web intégré qui permet aux développeurs de contrôler un navigateur directement à l'intérieur de leur application JavaFX, par exemple pour mélanger du code Java local avec une application Web hébergée en externe.
Les développeurs qui sélectionnent le framework JavaFX ont la possibilité d'écrire une seule application pouvant s'exécuter sur Windows, Mac et Linux, ainsi que sur les téléphones mobiles et tablettes fonctionnant sous Android et iOS. La capacité multiplate-forme est fournie via une intégration entre le framework JavaFX et GraalVM. Après la compilation, une seule application produira plusieurs sorties. Contrairement aux fichiers Java JAR traditionnels et au classpath, GraalVM produira une seule sortie binaire par plate-forme : une pour Windows, une pour iOS, etc. Lorsqu'elle est compilée en mode natif pour iOS, l'application JavaFX résultante prend en charge les fonctionnalités courantes d'iOS telle que bitcode. Les capacités pour Android sont similaires. Les développeurs d'applications multiplate-formes n'ont besoin que de comprendre Java et le framework JavaFX, puis GraalVM s'occupe de la phase de compilation.
La communauté OpenJFX propose une gamme de bibliothèques et d'outils permettant aux développeurs de créer des applications et de se concentrer sur la logique métier de ce qui rend l'application unique. Une liste des bibliothèques clés est disponible via JavaFX, y compris les bibliothèques existantes de frameworks d'interface utilisateur comme Bootstrap de Twitter. Cela fonctionne car JavaFX offre un support natif pour CSS. Pour les développeurs Java, cette bibliothèque fournit un résultat final similaire à ce que Electron offre aux développeurs Node, sauf que les éléments sont natifs plutôt qu'un navigateur web local.
Les développeurs qui créent des applications JavaFX ont deux choix pour le développement : du code Java ou FXML. FXML est un layout basé sur XML qui permet aux concepteurs de travailler sur des éléments séparés du code, en utilisant un outil comme SceneBuilder. Gluon propose une version téléchargeable publiquement de l'outil open-source SceneBuilder qui peut être utilisée de manière autonome ou intégrée avec des IDE comme Apache NetBeans.
Les applications JavaFX disposent également de fonctionnalités de diagnostic d'exécution. En tant qu'applications Java, elles s'intègrent à des outils de surveillance des performances bien connus comme OpenJDK Flight Recorder, mais des outils de diagnostic de l'interface utilisateur existent également. Un outil, Scenic View, offre des fonctionnalités pour regarder une application JavaFX en cours d'exécution et naviguer dans sa structure de disposition de l'interface utilisateur, semblable aux outils d'inspection DOM proposés par les navigateurs.
Les équipes qui cherchent à créer des applications Java graphiques pour une cible d'appareil unique ou sur plusieurs plates-formes peuvent télécharger JavaFX en tant que bibliothèque et l'utiliser avec n'importe quelle distribution Java, telle que AdoptOpenJDK .