5


通常、私は Java アプリを JVM を含むバンドルとしてデプロイするので、システムに JVM をインストールする必要はありません。
ところで: これは jnlp アプレットではなく、通常の Swing アプリケーションです。
ant を使用してこれを行いましたfx:deploy。これはすでに 64 ビット システムで機能しています。私の問題は、このアプリケーションを 32 ビット システムにデプロイしたいのですが、動作しないことです。

私が行ったことは次のとおり
です。クリーンな Windows 7 (32 ビット) インスタンスをセットアップし、32 ビット JVM をインストールしました。ここで、Ant スクリプトを実行してバンドルされた Java アプリをビルドし、App.exe をビルドしました。
しかし、この exe をダブルクリックして起動しようとすると、次のメッセージ ボックスが表示されます。
JVM の作成に失敗しました
[OK] をクリックすると、別のメッセージ ボックスが表示
JVM の起動に失敗しました
されます。この後、アプリは終了します。
Web を検索しても、32/64 ビット システムのバンドルに関連するものは見つかりませんでした。
誰かが私を正しい方向に向けることができれば、とてもうれしいです。
よろしくお願いします!
こんにちは、-クリス-

4

3 に答える 3

4

今後の JavaFX バージョン (現在は 2.2.40 として知られている) で修正された既知のバグのようです。

バグ ケースでは、ユーザーは回避策について言及しています。

RT-22610 に記載されている回避策 (runtime\jre\bin\msvcr100.dll 側をアプリケーションのランチャー バイナリにコピーする) を試すと、修正されます。

このバグは JDK 8 で修正されていると思うので、もう 1 つの回避策として、JDK 8 早期アクセス リリースをダウンロードし、そこからパッケージ化ツールを使用して Java 7 アプリケーションをパッケージ化することもできます (ただし、私はそれを試したことがなく、それはうまくいくでしょう)。

于 2013-05-15T18:36:43.037 に答える
2

@jewelsea の修正を少し変更しただけです。

msvcr100.dll を app/ フォルダーにコピーする代わりに、exe のすぐ隣に置くこともできます。

于 2013-10-29T14:18:30.690 に答える
0

MSI を生成している場合は、WIX が使用する WXS ファイルをハッキングして、msvcr100.dll を app フォルダーに自動的にコピーできます。FX Deploy を詳細にすると、たとえばプログラム アイコンのように、WXS をコピーして変更し、上書きするために使用できる一時 WXS ファイルの場所がわかります。

于 2014-06-20T20:57:26.300 に答える