2

Swing と JavaFX の両方のコンポーネントを含むアプリケーションを JAR ファイルにパッケージ化する際に問題が発生しています。Eclipseから実行しても問題ありません。しかし、Jar を実行するとエラーが発生します。アプリのコンストラクターを呼び出す main メソッドが実行されます。コンストラクターは、initAndShowGUI()後で JFrame に追加するために JFXPanel を作成しようとするメソッドを呼び出しますが、次のエラー メッセージで失敗します: Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: java.lang.UnsatisfiedLinkError: Can't load library: C:\Users\User\bin\glass.dll。このライブラリは JavaFX に必要なようですが、何らかの理由でロードされていません。「純粋な」JavaFXアプリ(Swingなし)は、必要なすべてのライブラリをロードするJFXの「事前初期化」メソッドのようなものを呼び出します(完全にはわかりません)。また、Java Web Start アプリケーションまたはアプレット ( http://docs.oracle.com/javafx/2/deployment/deploy_swing_apps.htm )をデプロイする方法に関する情報も見つけましたが、"

誰もこれをやったことがありますか?私は解決策をたくさん探してきましたが、解決策を見つけることができませんでした。ヘルプは大歓迎です!

4

1 に答える 1

1

あなたの問題はパッケージングに関連している可能性があります。

どのようにアプリをパッケージ化しましたか?

例えば:

(少なくとも) 最後の 2 つは、JavaFX コンポーネントを含む Swing アプリケーションを実行可能な jar にビルドするために機能することを知っています。

SwingInterop サンプルには、サンプルを実行可能な jar にパッケージ化するための ant スクリプトが含まれています。サンプルはjavafx ダウンロード サイトからダウンロードできます。

Swing アプリケーションのパッケージ化に JavaFX ant タスクを使用する必要があるのはなぜですか? を確認することを強くお勧めします。この投稿には、SwingInterop サンプル ビルド ファイルのソースも含まれています。

于 2012-07-11T18:35:27.017 に答える