AVERTISSEMENT JavaFX : configuration JavaFX non prise en charge : classes chargées à partir du « Module sans nom @... »
Problème :
Lors de l'installation et de l'exécution de JavaFX, les utilisateurs rencontrent un avertissement indiquant "Configuration JavaFX non prise en charge : les classes ont été chargées à partir du 'module sans nom @...'."
Contexte :
Cet avertissement découle de l'introduction du Java Platform Module System (JPMS) dans Java 9. Les modules JavaFX doivent être chargés en tant que "modules nommés" à partir du chemin du module, et non du chemin de classe.
Solution :
Pour résoudre ce problème :
-
Assurez-vous que JavaFX est sur le chemin du module : Ajoutez JavaFX au module -path en utilisant l'option --module-path.
-
Résoudre JavaFX en tant que modules nommés : Pour les applications non modulaires, utilisez l'option --add-modules pour forcer Java à résoudre les modules JavaFX en tant que modules nommés.
-
Applications modulaires : Utilisez l'option --module pour lancer votre application en tant que module avec les directives require appropriées dans le descripteur module-info.
- Utilisez une distribution JDK avec JavaFX : Installez une distribution JDK qui inclut JavaFX, telle que BellSoft Liberica JDK ou Azul Zulu JDK, pour charger automatiquement JavaFX en tant que modules nommés.
-
Ignorez le Avertissement : Depuis JavaFX 21, ignorer l'avertissement est une option, mais l'utilisation de configurations non prises en charge peut entraîner des problèmes futurs.
Déploiement :
-
Exiger que les clients disposent d'un JRE avec JavaFX : Assurez-vous que les clients disposent d'un JRE avec JavaFX installé.
-
Distribuez une application autonome : Créez une application autonome application utilisant des outils tels que jlink ou une image native pour regrouper l'application, les bibliothèques et le JRE.
-
Fichier JAR exécutable « Fat » : Intégrez JavaFX et toutes les dépendances dans un fichier JAR exécutable. Cependant, cette approche n'est implicitement pas prise en charge car elle charge JavaFX à partir du module sans nom.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!