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

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

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

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

Java

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

SDK

SDK(software development kit)は特定のハードウェアのプラットフォーム、開発環境又はソフトウェアパッケージでソフトウェアをつくるのに必要な開発ツールのセットです。SDKはAPI、IDE又は他の開発ツールとフレームワークを組み合わせたもので構成されていることがあります。

Eclipse

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

Q&A

解決済

1回答

2915閲覧

JAVAFXで画面の作成をしたい

riota

総合スコア1

JavaFX

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

Java

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

SDK

SDK(software development kit)は特定のハードウェアのプラットフォーム、開発環境又はソフトウェアパッケージでソフトウェアをつくるのに必要な開発ツールのセットです。SDKはAPI、IDE又は他の開発ツールとフレームワークを組み合わせたもので構成されていることがあります。

Eclipse

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

0グッド

0クリップ

投稿2021/06/28 15:01

前提・実現したいこと

元々COBOLエンジニアでしたが、自分のスキルアップのためにJAVAを身に着けたいと思い、ここ1カ月JAVAの勉強をしております。IDEはEclipseを使用しており、oracleJDKもインストールしております。
最近は簡単な画面を作成したいと思い、色々調べてscene builderとjavaFXを使って画面を学んでみようと試みたのですが、うまくいきません。最悪、javaFxやめてSwingとかWeb系の方でGUIのプログラムを作った方がいまの自分には簡単なのかなとも思っていますが、できることなら視覚的に操作できるscene builderを使いたいです。

発生している問題・エラーメッセージ

具体的には、下記の動画を見ながら同じ作業を行いました。
https://youtu.be/_7OM-cMYWbQ
動画と違う動きをするのは、4:43~5:03の部分です。

事前に「ウィンドウ」→「設定」から「ユーザーライブラリ」を選択して、SDKに入っていたjarファイルをユーザーライブラリに新規で追加しています。
その後、プロジェクトの「ビルドパス」→「ライブラリの構成」で先ほど作成したユーザーライブラリをプロジェクトに追加してもMain.javaのエラーが消えません。

この行に複数マーカーがあります。  - The type javafx.stage.Stage is not accessible 他多数・・・

該当のソースコード

import javafx.application.Application;

インポートがうまくいっていないので、後続のインスタンスとModule-info.javaにもエラーがでています。

試したこと

OracleJDKではなく、openJDKで同じことをやってみたり、OpenJDKにOpenJFKをマージするというこのサイトのやっていたことも試してみました。
https://blogs.osdn.jp/2018/11/12/merge-openjfx.html
ライブラリも一度削除して再度追加してみたりもしましたが、このエラーが突破できません。
色々やり過ぎてもしかしたら何か変な設定をしてしまったのかもしれないです・・・

補足情報(FW/ツールのバージョンなど)

eclipse 2021-2023
oracleJDK 16.0.1
openJDK 16.0.1
javafx-sdk-11.0.2

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

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

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

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

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

guest

回答1

0

ベストアンサー

EclipseでとりあえずJavaJXを体験してみたいのであれば、以下の様にMavenプロジェクトから構築する方法が手っ取り早いと思います。

  • 新規プロジェクト→Maveプロジェクトを選択
  • ウィザードが開きます。「シンプルなプロジェクトの作成」チェックがoffになっているのを確認して次へ。
  • 新規Mavenプロジェクトのアーキタイプ選択画面が開きます。フィルタに openjfx と入力し、出てきた選択肢から javafx-archetype-simple と書かれている方を選択して次へ。
  • グループID、アーティファクトIDを入力する欄が出ます。アーティファクトIDがプロジェクト名になります。グループIDはドメインのようなものです。どのような値でも良いので適当に埋めて完了をクリック。
  • 完了を押すとビルドが始まります。ビルドが終了するとプロジェクト中のファイルを操作できるようになります。srcフォルダの App.java がこのサンプルプロジェクトのエントリーポイントになります。
  • App.java を右クリックし、実行→Javaアプリケーションを選択すると何かしらバージョンがかかれたウィンドウが開くはずです。これでJavaFXの基本ウィンドウを開くことができました。

あとは、この App.javaに対していろいろ要素を追加してJavaFxの基本的な実装方法を学習していきましょう。

注:この手順はPleiades all in one Eclipse を導入していることを前提としています。

投稿2021/06/28 15:57

hope_mucci

総合スコア4447

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

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

riota

2021/06/29 13:13

hope_mucciさん ありがとうございます!!Mavenプロジェクトで画面作成できました。とても簡単にできて分かりやすかったです。ご紹介いただいたMavenはjavaFxのライブラリがデフォルトで組み込まれている(?)ということなのですかね。 できたところでまた軽易な疑問がでてきてしまい、大変恐縮なのですが、基本的にJAVAでの画面作成はVBAのような画面を組み立てる感じではなく一つひとつコードで作っていくのが普通なのでしょうか?
hope_mucci

2021/06/29 16:29

> 基本的にJAVAでの画面作成はVBAのような画面を組み立てる感じではなく一つひとつコードで作っていくのが普通なのでしょうか? 基本的にはそうなります。 この方法以外に「fxml」というxmlファイルを画面レイアウトに使用する方法もありますが、どちらも相応の難易度です。 fxmlをGUIで編集するツール「JavaFX Scene Builder」というものがEclipseのプラグインとして存在しますが、既に非推奨ツールとなっていますので今から手を出すべきではないと思います。 ※偏見かもしれませんがJavaFXを業務で使うシーンって全く聞いたことがありません。業務に役立てたいならサーブレットとか、他の言語を勉強するほうが良いのでは...
riota

2021/06/30 13:46

hope_mucciさん 色々ありがとうございました。大変参考になりました。JavaFXちょっとやめてサーブレットとか他の方法でやってみようかと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問