このチュートリアルを使用して、 JavaFX HTMLEditorを Swing デスクトップ アプリケーション内に埋め込むことができました。ローカルの Eclipse ではすべてうまく機能します。
私の質問は、これを顧客に展開する方法ですか? Oracle にはWebStart とアプレットの展開に関するチュートリアルがありますが、デスクトップ アプリに関する情報はありません。
現在、インストールした JavaFX SDK からライブラリとバイナリをプロジェクトにコピーし、ディストリビューションをコンパイルするときにそれらを含めます。
/my/application/lib/javafx/lib/javafxrt.jar
/my/application/lib/javafx/bin/[dll:s from JavaFX Runtime]
しかし、これは非常に奇妙に思えます。もっと良い方法があるに違いありません。ここで助けが必要です。問題は、Eclipse での開発中にjavafxrt.jar
クラスパスが必要になるため、使用できるような環境変数が表示されなかったため、jar ファイルをコピーしたことjavafx_home
です。しかし、JavaFX がロードされると、相対パスから dll をロードしようとします。そのため、dll もプロジェクトにコピーしました。
これは展開に問題があります。クライアントに 64 ビットの JVM がインストールされている場合、私は 32 ビットの JavaFX ランタイムを出荷しません (それは機能しないと思います)。現在、お客様は Windows のみを実行しているため、現時点では問題ありません。
実行時に JavaFX がインストールされているかどうかを確認し、インストールされている場合はそのパスを「動的に」取得する方法はありませんか? jar ファイルの配布は問題ありませんが、プラットフォーム依存のバイナリが心配です。
更新: WebStart はオプションではありません。これは、前身である古い Windows アプリにアプリケーションをバンドル/インストールするためです。すべての機能がまだ移植されていないため、2 つのアプリケーションはカスタムメイドの IPC プロトコルで通信します。
どんな助けでも大歓迎です!前もって感謝します。