IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

bouye

Notes de mises à jour de JavaFX 24

Noter ce billet
par , 16/03/2025 à 23h51 (3325 Affichages)
Alors que la sortie du JDK 24 est attendue pour demain 18 mars 2025 (heure américaine) et que JavaFX 24 suivra dans la foulée, les notes de mises à jour de l'OpenJFX 24 sont désormais disponibles sur GitHub.

Parmi les nouveautés importantes à signaler :

JDK 22 requis
JavaFX 24 requiert au minimum le JDK 22 pour pouvoir être utilisé.

Confirmation d’accès natif
Suite à des changements de sécurité dans le JDK 24, les méthodes qui font des accès natifs provoqueront désormais l'affichage de l'avertissement suivant dans la console :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
WARNING: Restricted methods will be blocked in a future release unless native access is enabled
Cela impactera l'utilisation pas mal de bibliothèques tierces faisant des appels natifs, dont JavaFX. Pour se prémunir d'un blocage de ces accès dans des versions futures du JDK, il faudra donc rajouter le flag suivant à l’interpréteur Java lors l’exécution : --enable-native-access=<list-of-modules>. Pour JavaFX, la liste de ces modules inclut javafx.graphics qui fait partie des modules de base et, optionnellement, javafx.media et javafx.web si vous les utilisez.

Ce qui donne, par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
java --enable-native-access=javafx.graphics,javafx.media,javafx.web
Liaison avec navigateur web intégré
Le module jdk.jsobject qui est utilisé pour fournir un pont entre le navigateur web WebView et le code Java est déprécié dans le JDK 24 et sera retiré dans une version future de Java. JavaFX 24 fournira désormais sa propre version de ce module qui devra donc être utilisé en lieu et place de la version du JDK.

Lors du développement avec le JDK 24, le flag --upgrade-module-path devra être utilisé avec javac et java pour permettre la compilation et l’exécution avec la nouvelle version du module :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
javac --upgrade-module-path=/path/to/javafx-sdk-24/lib
java --upgrade-module-path=/path/to/javafx-sdk-24/lib
Cette méthode ne fonctionnera pas avec les JDK 22 ou 23. Pour ces JDK, il faudra alternativement utiliser le flag --module-path.

Lors de la création d'applications natives avec jlink, l'ordre dans lequel le chemin vers les fichiers jmods est liste est désormais important et, quand le JDK 24 est utilisé, le chemin d’accès des fichiers jmods de JavaFX doit être placés avant celui des fichiers du JDK :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
jlink --output jdk-with-javafx \
    --module-path /path/to/javafx-jmods-24:/path/to/jdk-24/jmods \
    --add-modules ALL-MODULE-PATH
Cette méthode ne fonctionnera pas avec les JDK 22 ou 23. Pour ces JDK, il faudra mettre le chemin d’accès des fichiers jmods de JavaFX après celui des fichiers du JDK.

Extension des formats d'images pris en charge
Le chargement des images dans JavaFX 24 repose sur le module javax.imageio. L'API de module permet d'utiliser des bibliothèques et pilotes tiers pour prendre en charge des formats d'images supplémentaires, par exemple des formats à densité variable tels que SVG. Lors du chargement d'image à densité variable, JavaFX générera une version rastérisée de l'image adaptée à la configuration de l'écran.

Il est donc possible d'utiliser des bibliothèques et pilotes tiers fournis en tant qu’extension Image I/O ou en tant que services enregistrés auprès de IIORegistry. Voir la documentation de Image I/O pour plus d'information.

Conclusion
Le JDK 24 force l’arrivée de quelques changements qui vont modifier un peules habitudes et la configuration des projets JavaFX qui était sensiblement les mêmes depuis la sortie du JDK 9 et le passage aux modules. L’arrivée du support de nouveaux formats d'image est toujours un plus bienvenu. Le reste du document détaille le lot habituel de correctifs ou de soucis connus.

Sources : GitHub OpenJDK-OpenJFX

Envoyer le billet « Notes de mises à jour de JavaFX 24 » dans le blog Viadeo Envoyer le billet « Notes de mises à jour de JavaFX 24 » dans le blog Twitter Envoyer le billet « Notes de mises à jour de JavaFX 24 » dans le blog Google Envoyer le billet « Notes de mises à jour de JavaFX 24 » dans le blog Facebook Envoyer le billet « Notes de mises à jour de JavaFX 24 » dans le blog Digg Envoyer le billet « Notes de mises à jour de JavaFX 24 » dans le blog Delicious Envoyer le billet « Notes de mises à jour de JavaFX 24 » dans le blog MySpace Envoyer le billet « Notes de mises à jour de JavaFX 24 » dans le blog Yahoo

Catégories
Java , Java

Commentaires