質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JavaFX

JavaFXとは、Java仮想マシン上で動作するリッチインターネットアプリケーション (RIA) のGUIライブラリです。Swingとは異なり、FXMLと呼ばれる XMLとCSSを併用してデザインを記述します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

解決済

2回答

8480閲覧

JavaFXにおいて、Exception in Application start method.

Yuhara327

総合スコア9

JavaFX

JavaFXとは、Java仮想マシン上で動作するリッチインターネットアプリケーション (RIA) のGUIライブラリです。Swingとは異なり、FXMLと呼ばれる XMLとCSSを併用してデザインを記述します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2020/04/18 13:16

編集2020/04/19 02:07

EclipseでJavaFXを導入し、テストしようとしたらエラーが出てしまいました。
Eclipseの"問題"タブには何の問題も出力されていないです。
実行するとコンソールに赤い文字でメッセージが出てきます。
コードをどこか修正すればよいのでしょうか、もしくは設定や導入の問題なのでしょうか、よろしくお願いします。

Main

1package application; 2 3import javafx.application.Application; 4import javafx.fxml.FXMLLoader; 5import javafx.scene.Parent; 6import javafx.scene.Scene; 7import javafx.stage.Stage; 8 9 10public class Main extends Application { 11 public static void main(String[] args) { 12 launch(args); 13 } 14 15 @Override 16 public void start(Stage stage) throws Exception{ 17 //fxml読み 18 Parent root = FXMLLoader.load(getClass().getResource("/Sample.fxml")); 19 //scene 20 Scene scene = new Scene(root); 21 stage.setScene(scene); 22 //表示 23 stage.show(); 24 } 25}

moduleinfo

1module javafx { 2 exports application; 3 4 requires javafx.base; 5 requires javafx.fxml; 6 requires transitive javafx.graphics; 7 requires javafx.controls; 8}

error

1Exception in Application start method 2java.lang.reflect.InvocationTargetException 3 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 4 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 5 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 6 at java.base/java.lang.reflect.Method.invoke(Method.java:566) 7 at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:464) 8 at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:363) 9 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 10 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 11 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 12 at java.base/java.lang.reflect.Method.invoke(Method.java:566) 13 at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:1051) 14Caused by: java.lang.RuntimeException: Exception in Application start method 15 at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:900) 16 at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195) 17 at java.base/java.lang.Thread.run(Thread.java:834) 18Caused by: java.lang.NullPointerException: Location is required.

Sample

1<?xml version="1.0" encoding="UTF-8"?> 2 3<?import javafx.scene.control.Label?> 4<?import javafx.scene.layout.AnchorPane?> 5<?import javafx.scene.text.Font?> 6 7 8<AnchorPane prefHeight="400.0" prefWidth="400.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/11.0.1" fx:controller="application.SampleController"> 9 <children> 10 <Label layoutY="100.0" prefHeight="200.0" prefWidth="400.0" text=" Hello World" textAlignment="CENTER"> 11 <font> 12 <Font size="75.0" /> 13 </font> 14 </Label> 15 </children> 16</AnchorPane> 17

プロジェクトの内容です
なにかコードが書いてあるものはこれで全てです...
application.cssは白紙でした

SampleController

1package application; 2 3public class SampleController { 4 5}

JavaSE 11を使用しております。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shiketa

2020/04/18 13:39

Sample.fxmlファイルと、Sample.fxmlファイルで定義しているコントローラクラスのソースがあると思います。それらも提示していただければなにかわかるとおもいます。
Yuhara327

2020/04/18 14:17

わかりました、ありがとうございます????‍♂️
guest

回答2

0

ベストアンサー

原因

getClass().getResource("/Sample.fxml”)が失敗しているようです。

Java

1Caused by: java.lang.NullPointerException: Location is required.

解決法

Java Class.getResource()、ClassLoader.getResource … をみてください。
おそらく、"Sample.fxml””/application/Sample.fxml”でしょう。

投稿2020/04/19 00:43

xebme

総合スコア1090

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shiketa

2020/04/19 00:54

たしかに。これも原因のひとつですね。
Yuhara327

2020/04/19 02:08

"Sample.fxml”にすると動かすことができました!! みなさまご協力ありがとうございました????‍♂️
guest

0

xml

1<AnchorPane ... fx:controller="application.SampleController"> 2 <children ...

Sample.fxmlファイルで指定している、application.SampleControllerクラスが存在しないからでしょう。
application.SampleControllerクラスの雛形は、SceneBuilderの[View]-[Show ... Skelton]メニューで表示することができます。コピペして追加してみてください。


かいけつしたようですが、いちお。追記。

Fullをチェックすると、こういう雛形ができるはずです。なかみがからっぽのままだと、以降の作業がなんともなりませんよ。

java

1package application; 2 3import java.net.URL; 4import java.util.ResourceBundle; 5import javafx.fxml.FXML; 6 7public class SampleController { 8 9 @FXML 10 private ResourceBundle resources; 11 12 @FXML 13 private URL location; 14 15 @FXML 16 void initialize() { 17 } 18}

投稿2020/04/18 15:07

編集2020/04/19 02:14
shiketa

総合スコア4061

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Yuhara327

2020/04/18 15:36

SampleController.javaを作成して、コピペしてみましたがエラー消えません...
shiketa

2020/04/19 00:34 編集

SampleController.javaのソースも、貼ってみせてください。また、JDKのバージョンも提示ねがいます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問