同じパッケージ内の JavaFX "場所が必要です" エラー
「java.lang.NullPointerException: 場所が必要です」というエラー メッセージJavaFX は、FXML ファイルをロードできない場合に発生することがあります。この問題は、FXML ファイルが Application クラスと同じパッケージ内にある場合でも発生することがあります。
原因:
Maven が使用されている場合など、特定の場合に発生します。 、FXML ファイルが正しく配置されていない可能性があります。これは、Maven のリソース管理メカニズムが原因で発生する可能性があります。
解決策:
この問題を解決するには、getClass().getResource の代わりに getClassLoader().getResource() を使用します。 () を使用して FXML ファイルをロードします。この変更により、FXML ファイルの検索に正しい場所が使用されるようになります。
変更コード:
次の行を置き換えます:
<code class="java">Parent root = FXMLLoader.load(getClass().getResource("main.fxml"));</code>
<code class="java">Parent root = FXMLLoader.load(getClass().getClassLoader().getResource("main.fxml"));</code>
getClassLoader().getResource() を利用することで、「場所が必要です」エラーの問題は解決されるはずです。この改訂されたアプローチでは Maven のリソース管理が考慮されており、FXML ファイルを正常にロードできるようになります。
以上が同じパッケージ内で FXML を使用するときに JavaFX で発生する「場所が必要です」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。