Applicationである必要はない

前述の試し書きしたGtkTestはApplicationを継承しているが、
FileChooserをそのまま使用しているだけなので、
別にApplicationのフレームワークに乗っかる必要はないだろう。

import javafx.application.Platform;
import javafx.stage.FileChooser;

public class GtkTest {
    public static void main(String[] args) {
        Platform.startup(() -> {});
        Platform.runLater(() -> {
            FileChooser fileChooser = new FileChooser();
            fileChooser.setTitle("jdk.gtk.version: " + System.getProperty("jdk.gtk.version"));
            fileChooser.showOpenDialog(null);
            Platform.exit();
        });
    }
}

Platform#startup(Runnable)はJavaFX環境を開始するためのsince 9な静的メソッドで、
これを呼んでおかないとJavaFXの機能を使用する際に実行時エラーとなる。
それにしても明示的に使っているクラスが少なくなったのにソースが全然シンプルになっていない。