⚙️

JavaFXを使ったGUIアプリ(1) 開発環境を構築する

2023/08/13に公開

目次

はじめに

JavaFX(OpenJFX)は、グラフィカル・ユーザ・インタフェース(GUI)のアプリケーションを開発できるオープンソースのプラットフォームです。JavaFXを使うことにより、多様なプラットフォーム上で動作する本格的なクライアント・アプリケーションを容易に作成することができます。
https://openjfx.io/index.html

この記事では、JavaFXを使うための準備として、Windows上にJavaとEclipseの開発環境を構築する方法を説明します。なお、読者はJavaのプログラミングとEclipseの使用方法に関する基本知識があることを前提とします。

Javaのインストール

Java8ではJDK(Java Development Kit)にJavaFXが標準で含まれていましたが、Java11からOpenJDKとOpenJFXに分離されました。このため、Java11以降はJava本体とは別にJavaFXをインストールする必要があります。Java本体に後からJavaFXを追加することは可能ですが、JavaFXは単なるJavaのライブラリではないため、インストールに手間がかかります。そこでこの記事では、最初からJavaFXが組み込まれているJDKを利用します。2023年8月現在、以下の二つのOpenJDKにJavaFXが組み込まれています。

注意事項として、前者は「Full JDK」、後者は「JDK FX」を選択してダウンロードしてください。
以下、Liberica Full JDK 17.0.6+10 x86 64 for WindowsのMSIファイル(bellsoft-jdk17.0.6+10-windows-amd64-full.msi)をダウンロードした場合のインストール方法について説明します。

ダウンロードしたファイルを実行すると以下のような画面が表示されます。
Setup Wizard
Nextボタンを押して、以降は基本的にデフォルト設定でインストールを行ってください。
Custom Setup
以下の画面が表示されたら、Finishボタンを押してインストールを完了させます。
Completed

Eclipseのインストール

EclipseはEclipse Foundationの公式サイトから入手可能ですが、日本語化されたものが以下のサイトで公開されています。
https://mergedoc.osdn.jp/

まず、「Eclipse 2023 最新版」と書かれた青色のボタンをクリックして、Pleiades All in One Eclipse ダウンロードのページを開きます。提供されているファイルにはStandard EditionとFull Editionの2種類がありますが、先ほどインストールしたOpenJDKを利用する場合は、ファイルサイズが小さなStandard Editionで十分です。そこで、少し分かりにくいですが「Standard Edition 表示」と書かれた草色のボタンをクリックしてStandard Editionを表示させます。以下、Windows x64 Java Standard Edition JavaのEXEファイル(pleiades-2023-03-java-win-64bit_20230326.exe)をダウンロードしたものとします。なお、Standard Editionでもファイルサイズが481MBあるため、ダウンロードには相当の時間がかかります。また、EXEファイルをダウンロードするため、ブラウザによってはセキュリティに関する警告画面が表示される場合があります。

ダウンロードが完了したら、ファイルを実行します。その際に以下のような警告画面が表示されたら、詳細情報のリンクを開いてインストールを実行してください。
Microsoft Defender
次に、以下のような注意書き画面が表示されます。この注意書きをよく読んで、基本的にデフォルト設定でインストールを行ってください。作成先フォルダは「c:\pleiades\2023-03」のように、空白や日本語文字を含まない短いフォルダ名を指定してください。インストールにも相当の時間がかかります。
Self-extracting Archive

Eclipseの起動

インストールが完了すると、eclipseフォルダ中にeclipse.exeが作成されます。このファイルがEclipseの本体なのでダブルクリックして起動してください。以下の起動画面が表示されます。初回起動時にはここからも時間がかかりますが、2回目以後は速くなります。
Eclipse Starting

ワークスペースのディレクトリを指定してEclipseが起動したら、ファイルメニューの新規でJavaプロジェクトを作成します。その際に、以下の画面のようにJavaの実行環境(JRE)としてJavaFXが組み込まれているJDKを設定してください。
New Java Project

HelloWorldプログラムの実行

プロジェクトを作成したら、JavaFXが正常に動作することを確認するため、以下のHelloWorldプログラム(HelloWorld.java)を入力します。なお、パッケージ名は必要に応じて変更してください。

// JavaFX Hello-World Application
package pkg1;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class HelloWorld extends Application {

    @Override
    public void start(Stage primaryStage) {
        Button btn = new Button("あいさつをする");
        btn.setOnAction(e -> {
            System.out.println("JavaFX の世界へようこそ!");
        });
        StackPane root = new StackPane(btn);
        Scene scene = new Scene(root, 300, 250);
        primaryStage.setTitle("JavaFX Hello-World App");
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

ソースコードにエラーがないことを確認したら保存し、実行メニューのJavaアプリケーションを選択して実行してください。HelloWorldプログラムが起動し、以下のようなウインドウが画面に表示されます。
JavaFX HelloWorld App
画面中央の「あいさつをする」というボタンをクリックすると、Eclipseのコンソールに「JavaFX の世界へようこそ!」というメッセージが表示されるはずです。
Eclipse Main Window

HelloWorldプログラムは、アプリのウインドウを閉じるか、Eclipseのコンソールの終了ボタンを押すことによって終了します。

トラブルシューティング

もしトラブルが発生した場合には、以下の手順で問題の場所を確認してください。

  1. Javaの動作確認
    コマンドプロンプトを起動し、以下のコマンドでインストールしたJDKが正しく動作していることを確認する。
java --version
  1. Eclipseの動作確認
    Windowsのエクスプローラで、eclipse.exeがインストールされている場所を確認する。Program Filesフォルダやデスクトップにインストールされていると、動作しないことがある。
    さらに、eclipse.exe -clean.cmdを起動してキャッシュのクリーンアップをしてみる。

  2. Eclipseプロジェクトのプロパティの確認
    Eclipseのプロジェクトメニューからプロパティーウインドウを開き、Javaのビルド・パスを表示させる。以下のように、JREシステムライブラリにインストールしたJDKが設定されていることを確認する。
    Eclips Project Property

おわりに

この記事では、WindowsにJavaとEclipseをインストールして、JavaFXのGUIアプリの開発環境を構築する方法について述べました。次回以降の記事で、JavaFXを使ったGUIアプリの作成方法を具体的に説明します。

Discussion