[解決済み] javafx.util パッケージは存在しません。
質問
Macでjavaのバージョン11.0.2を使用しています。 インポートするjavaファイルをコンパイルする際、以下のような問題が発生しました。
javafx.util.pair
を取得しました。
error: package javafx.util does not exist
. この問題を解決するための有用な資料があまりないのです。 私はオンラインでさまざまな提案を試しましたが、無駄でした。 現在、私はJavaFXパッケージを私のJavaディレクトリに追加しようとしています。 しかし、それは動作しません。
以下は、私が行ったことです。
-
javafx-sdk-11.0.2フォルダーをダウンロードしました。 このフォルダの中に、legalとlibの2つのディレクトリがあります。
-
の項目を移動しました。
legal
ディレクトリーから/Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home/legal
-
の項目を移動する
lib
ディレクトリーから/Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home/lib
-
ターミナルを開き、この.javaファイルをコンパイルします。
質問_1: 上記で何か見逃していることはありますか?
Question_2:この方法が間違っているとしたら、どうしたらいいでしょうか?
解決方法は?
javafx.util.Pair
の一部です。
javafx.base
モジュール
また、JavaFX SDKは、Java JDKの一部ではなくなったため、ご指摘のとおり、お使いのマシンにダウンロードする必要があります。
をたどればいいのです。 OpenJFXドキュメント を開始する方法について説明します。
を手に入れたら ダウンロード SDKで、JavaFX 11を実行したい場合、次のようなことが必要であることがわかります。 文書化 :
export PATH_TO_FX=path/to/javafx-sdk-11.0.2/lib
javac --module-path $PATH_TO_FX --add-modules=javafx.controls HelloFX.java
java --module-path $PATH_TO_FX --add-modules=javafx.controls HelloFX
これは、Java 11を実行し、JavaFX SDKの独立した場所にあるモジュールをインクルードすることを意味します。なお
javafx.controls
を推移的依存関係として持っています。
javafx.base
と
javafx.graphics
モジュールを使用します。
しかし、それらのドキュメントには、JavaFXのファイルをJDKにコピーしなければならないとは書かれていないでしょう。それはうまくいかないでしょう。
うまくいかない最大の理由。Java 11とJavaFX 11はモジュール化されており、たとえJavaFXのjarが
path/to/javafx-sdk-11.0.2/lib
JDKは大きなファイルを使用します。
/path/to/jdk-11.0.2.jdk/Contents/Home/lib/modules
を実行するために
java
コマンドを実行します。このファイルはJDKがビルドされたときに作成されたものなので、そこにどんなjarを追加しても効果はない。
代替
ただし、docsには
右
JavaFX SDKをJDKにコピーする方法は、新しいカスタムイメージを作成することです。以下を参照してください。
リンク
, セクション
Custom JDK+JavaFX image
.
を使用することができます。
jlink
を使用すると、特定のプロジェクトにアタッチされることなく、一部またはすべての JavaFX モジュールを含むランタイムイメージを作成することができます。
つまり、Java11とJavaFX11を組み合わせたイメージを作成し、それを新しいJDKとして使用することができるのです。これによって
--module-path
と
--add-modules
の引数(少なくともJavaFXの観点では)。
実際、いくつかのディストリビューションでは これ すでに実施しています。
つまり、選択肢としては、通常のJDKとJavaFX SDKを使用する(
--module-path
と
--add-modules
) または、JavaFXを含むカスタムJDKを作成/使用する。
関連
-
[解決済み】スレッド「main」での例外 java.lang.StringIndexOutOfBoundsException: 文字列のインデックスが範囲外です。0 [閉店]
-
[解決済み】ResultSetの例外 - 結果セットの開始前
-
[解決済み] hibernate のプロパティが見つかりません。
-
[解決済み】スレッド "main "での例外 java.util.NoSuchElementException
-
[解決済み】Javaメソッドスタブ
-
[解決済み] クラスJavaLaunchHelperは、以下の2箇所で実装されています。
-
[解決済み] Javaにおけるpublic、protected、package-private、privateの違いは何ですか?
-
[解決済み] Javaはパラメータのデフォルト値をサポートしていますか?
-
[解決済み] Could not find or load main class "とはどういう意味ですか?
-
[解決済み】Javaではfinallyブロックは必ず実行されるのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] hibernateでResultSetを抽出できない。
-
[解決済み] メソッドがスーパータイプのメソッドをオーバーライドまたは実装していない - Overrideの場合
-
[解決済み】Mockitoでモックからチェックされた例外を投げる
-
[解決済み】 JAVA 変数宣言はここではできない
-
[解決済み] intellijが自動配線リポジトリにタイプのBeanが見つからないと不正確な発言をする件
-
[解決済み】java.io.IOException: 壊れたパイプ
-
[解決済み] [Solved] java.lang.NoClassDefFoundError: クラスXXXを初期化できませんでした。
-
[解決済み] テスト
-
[解決済み】Eclipseで「パッケージエクスプローラー」ビューが見つからない
-
[解決済み】CreateProcess error=2, The system cannot find file specified.