[解決済み] JavaFX 同じパッケージ内なのに「場所が必要です。
2022-02-25 15:17:56
質問
JavaFXのプログラムを実行しようとしているのですが、なかなかうまくいきません。java.lang.NullPointerException.NullPointerException "というエラーが出続けています。場所が必要です'。fxmlファイルは、Applicationクラスと同じパッケージに入っています。以下は、私の非常に簡単なコードです。
package com.kromalights.designer.entry;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
Parent root = FXMLLoader.load(getClass().getResource("main.fxml"));
primaryStage.setTitle("Kromalights Designer");
primaryStage.setScene(new Scene(root, 300, 275));
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
そして、これが私のmain.fxmlファイルのコピーです。
<?xml version="1.0" encoding="UTF-8"?>
<?import java.lang.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.layout.BorderPane?>
<?scenebuilder-stylesheet mailStyles.css?>
<?import java.net.*?>
<BorderPane prefHeight="300.0" prefWidth="300.0" xmlns:fx="http://javafx.com/fxml/1"
xmlns="http://javafx.com/javafx/2.2"
fx:controller="com.kromalights.designer.entry.Controller">
<bottom>
<Pane prefHeight="200.0" prefWidth="200.0"/>
</bottom>
<center>
<Pane prefHeight="200.0" prefWidth="200.0"/>
</center>
<left>
<VBox prefHeight="200.0" prefWidth="100.0"/>
</left>
<top>
<HBox prefHeight="100.0" prefWidth="200.0"/>
</top>
<stylesheets>
<URL value="@mainStyles.css" />
</stylesheets>
</BorderPane>
コントローラクラスは存在し、fxmlファイルで指定されたパッケージの中に入っています。私の名前はすべて正しく、あるべき場所にあります。何が足りないのでしょうか?名前の問題である可能性を考え、fxmlファイルの名前を変えてみました。助けてください。参考までに、私はOSX上でIntellij IDEAを使用しています。
UPDATE: これはMavenの問題です。このプロジェクトにMavenをセットアップしたため、この問題が発生しました。Mavenを一時的に削除して、Mavenなしで作業を継続できるようにしました。Mavenを使用しているときに、この問題をどのように扱うのがベストなのか、どなたかお分かりになりますか?
解決方法は?
main/resourcesディレクトリにファイルを移動させるとうまくいきました。
関連
-
[解決済み] JavaでImportの名前を変更する、または同じ名前の2つのクラスをインポートする
-
[解決済み] 同じメソッドを同じ引数で複数回呼び出した状態でMockitoを使用する
-
[解決済み] 未処理の例外タイプIOException」が表示されるのですが?
-
[解決済み] Java の条件付きコンパイル:コードチャンクをコンパイルしないようにするには?
-
[解決済み] x--やx++はここで何をするのですか?
-
[解決済み] Javaにおけるpublic、protected、package-private、privateの違いは何ですか?
-
[解決済み] 複数のJava例外を同じcatch節でキャッチすることはできますか?
-
[解決済み] Javaパッケージ名の単語区切り記号はどのようなものですか?
-
[解決済み] メソッドは、タイプ内の別のメソッドと同じ消去を持つ
-
[解決済み] JAVA_HOME が正しく設定されているにもかかわらず、Gradle が間違った JAVA_HOME を検出する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] tempとは何ですか、またjavaにおけるtempの用途は何ですか?
-
[解決済み] Firebase クラスにシリアライズするプロパティが見つからない
-
[解決済み] JavaでFileFilterを作るには?
-
[解決済み] コレクションへの共有参照が見つかりました org.hibernate.HibernateException
-
[解決済み] プロトコルハンドラの初期化に失敗しました。
-
[解決済み] raw 型のメンバへのアンチェックの呼び出し
-
[解決済み] Apache Camelのログに簡単なテキストを記録する
-
[解決済み] publicId と systemId の間に空白が必要です。
-
[解決済み] SubclipseとJavaHLのインストールで頭を悩ます
-
[解決済み] Maven: assembly-pluginが全く実行されない