Maison >Java >javaDidacticiel >Comment accéder aux fichiers FXML dans les projets JavaFX basés sur Maven ?

Comment accéder aux fichiers FXML dans les projets JavaFX basés sur Maven ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-19 08:58:03713parcourir

How Do I Access FXML Files in Maven-Based JavaFX Projects?

Accès aux fichiers FXML dans les projets Maven JavaFX

Dans les applications JavaFX, le référencement des fichiers FXML à partir des contrôleurs est crucial. Lorsque vous structurez votre projet à l'aide de Maven, il est important de prendre en compte l'emplacement de vos fichiers FXML dans le dossier de ressources.

Recherche de ressources en Java

Avant de plonger dans la solution spécifique , il convient de noter que la recherche de fichiers FXML est un type de tâche de recherche de ressources génériques en Java. Le FXMLLoader prend l'emplacement de la ressource en entrée, de sorte que la recherche elle-même s'effectue dans le code de votre application appelante.

Options pour la résolution de l'emplacement FXML

Il existe plusieurs façons de structurer votre Fichiers FXML et résolvez leurs emplacements :

  1. Placez les fichiers FXML dans le Répertoire src/main/resources :

    loader.setLocation(getClass().getResource("/main.fxml"));
  2. Placez les fichiers FXML dans un répertoire src/main/resources/fxml :

    loader.setLocation(getClass().getResource("/fxml/main.fxml"));
  3. Placer les fichiers FXML dans une ressource correspondante directory :

    loader.setLocation(getClass().getResource("main.fxml"));

    Cela suppose que la classe effectuant le chargement de FXML se trouve dans la hiérarchie source Java correspondante.

Recommandations d'utilisation de FXMLLoader

Pour des résultats optimaux, il est recommandé pour :

  • Instancier FXMLLoader via le nouveau FXMLLoader() au lieu de méthodes statiques.
  • Définissez l'emplacement sur le FXMLLoader instancié et utilisez load().
  • Dérivez un emplacement basé sur une classe utilisant getClass().getResource().

Paramètres de l'IDE et de la build

Assurez-vous que votre IDE ou votre outil de build copie les fichiers FXML du dossier de ressources vers la build répertoire de sortie.

Applications modulaires Java Jigsaw

Pour les applications modulaires créées à l'aide de Java Jigsaw, utilisez la classe pour obtenir des ressources directement au lieu du chargeur de classe :

ComboBoxStyling.class
    .getResource("/css/styleclass.css"); 

En suivant ces directives, vous pouvez référencer efficacement vos fichiers FXML dans vos contrôleurs de projet JavaFX Maven.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn