Maven JavaFX プロジェクトでの FXML ファイルへのアクセス
JavaFX アプリケーションでは、コントローラーから FXML ファイルを参照することが重要です。 Maven を使用してプロジェクトを構築する場合、リソース フォルダー内の FXML ファイルの場所を考慮することが重要です。
Java でのリソース検索
特定のソリューションを詳しく調べる前にFXML ファイル検索は Java の汎用リソース検索タスクの一種であることに注意してください。 FXMLLoader はリソースの場所を入力として受け取るため、検索自体は呼び出し元のアプリケーション コード内で行われます。
FXML の場所解決のオプション
FXML ファイルとその場所の解決:
FXML ファイルを src/main/resources ディレクトリに配置します:
loader.setLocation(getClass().getResource("/main.fxml"));
FXML ファイルを src/main/resources/fxml ディレクトリに配置します:
loader.setLocation(getClass().getResource("/fxml/main.fxml"));
FXML ファイルを対応するリソース ディレクトリに配置します:
loader.setLocation(getClass().getResource("main.fxml"));
これは、FXML ロードを実行するクラスが対応する Java ソース階層にあることを前提としています。
FXMLLoader の使用に関する推奨事項
最適な結果を得るには、次のことをお勧めします。
IDE とビルド設定
を使用してクラスに基づいて場所を取得します。 IDE またはビルド ツールが FXML ファイルをリソース フォルダーからビルド出力ディレクトリにコピーしていることを確認します。
Java Jigsaw モジュラー アプリケーション
Java Jigsaw を使用して構築されたモジュラー アプリケーションの場合、クラスローダーの代わりにクラスを使用してリソースを直接取得します。
ComboBoxStyling.class .getResource("/css/styleclass.css");
これらのガイドラインに従うことで、JavaFX Maven プロジェクト コントローラー内で FXML ファイルを効果的に参照できます。
以上がMaven ベースの JavaFX プロジェクトで FXML ファイルにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。