前提・実現したいこと
プログラムを作っていたら、突然このようなエラーメッセージが起きました。
なんでこのエラーメッセージが起きたのか考えても分かりません…
どなたか助けてください…
発生している問題・エラーメッセージ
Exception in Application start method java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:389) at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:328) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767) Caused by: java.lang.RuntimeException: Exception in Application start method at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$154(LauncherImpl.java:182) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.NullPointerException: Input stream must not be null at javafx.scene.image.Image.validateInputStream(Image.java:1128) at javafx.scene.image.Image.<init>(Image.java:706) at saisyuukadai.date1.start(date1.java:116) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$161(LauncherImpl.java:863) at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$174(PlatformImpl.java:326) at com.sun.javafx.application.PlatformImpl.lambda$null$172(PlatformImpl.java:295) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$173(PlatformImpl.java:294) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$147(WinApplication.java:177) ... 1 more
試したこと
プログラムが長いので、プログラムにエラーが起きた1歩手前の行動につき、プログラムを割愛させて頂きます。(全文が必要な場合は、言って頂けると助かります)
class meEventHandler implements EventHandler<ActionEvent>{ public void handle(ActionEvent e3) { stage4 = new Stage(); lb = new Label(""); ch1 = new CheckBox("水やり"); ch2 = new CheckBox("晴れ"); bt1 = new Button("設定"); BorderPane bp =new BorderPane(); VBox hb = new VBox(); VBox hb1 = new VBox(); hb.getChildren().add(ch1); hb.getChildren().add(ch2); hb.setAlignment(Pos.CENTER); hb1.getChildren().add(lb); hb1.getChildren().add(bt1); hb1.setAlignment(Pos.CENTER); bt1.setOnAction(new installEventHandler()); bp.setLeft(hb); bp.setCenter(hb1); Scene sc = new Scene(bp, 400, 400); stage4.setScene(sc); stage4.show(); } } //ここの画像読み込みの役割のイベントハンドラを試験的に追加して、消したら上記のようなエラーが出ました。 class installEventHandler implements EventHandler<ActionEvent>{ public void handle(ActionEvent e) { try{ //not embedded resource. doesn't work when packaged in jar File file = new File("black_dot.png"); Image imageFromProjectFolder = new Image(file.toURI().toString());//or new Image(new FileInputStream("black_dot.png")); ImageView view1 = new ImageView(imageFromProjectFolder); URL url = getClass().getResource("red_dot.png"); Image imageFromSourceFolder = new Image(url.openStream()); ImageView view2 = new ImageView(imageFromSourceFolder); //or new ImageView("/package/red_dot.png"); url = getClass().getResource("/resources/blue_dot.png"); Image imageFromReourceFolder = new Image(url.openStream()); ImageView view3 = new ImageView(imageFromReourceFolder); //or new ImageView("/resources/blue_dot.png"); pane = new TilePane(view1, view2, view3); } catch (Exception ex) {ex.printStackTrace();} } } }
補足情報(FW/ツールのバージョンなど)
jdk14
タイトルに要件が含まれていませんし、エラーだけ提示されてもできるアドバイスは「エラー読んで」「エラーの通り」くらいしかないですよ。
申し訳ありませんでした、元々のプログラムを追加するということでよろしいでしょうか…?
「質問するときのヒント」にある通り「あなたがしたことを書きましょう」です。
エラーは「起きたこと」です。
他者が再現できる情報がなければ答えようがないのです。何をしたのかを知ってるのが質問者だけの状況はよろしくありません。
あ、そういうことですね…
分かりました、書き直します
少なくともプログラムの追加が必要です。
それから、どのような操作をしたときに質問のエラーが出たのかという情報も必要です。
了解しました、ただいま書き直しましたので改めてよろしくお願いします
回答1件
あなたの回答
tips
プレビュー