1

この質問は、install4j4.2.8に関するものです。

install4jを使用して、Javaアプリケーション用の「Windowsアーカイブ」タイプのメディアファイルを作成しています。ほとんどのユーザーは.exeインストーラーをダウンロードできますが、一部のお客様はmsiを必要としているため、サードパーティのツールを使用して作成されたmsiの基礎としてこの.zipアーティファクトを使用します。

これは、バンドルされたjre(非共有)を組み込む場合を除いて、正常に機能します。デフォルトでは、install4jはpack200アルゴリズムを使用してjre階層内の特定のjarファイル(rt.jarなど)を圧縮し、ランチャー実行可能ファイルが最初に実行されたときにそれらを解凍するようです。

このプロセスは、exeインストーラーからインストールされたインストールでは明らかに正常に機能しますが、msiインストール(前述のようにWindowsの.zipアーティファクトから作成されたもの)からは多くの場合失敗するようです。install4jのマニュアルを調べて、この圧縮をオフにする方法があるかどうかを確認しましたが、jreバンドル作成ツールにはそのようなパラメーターがないようです。そして、振る舞いは良いので、それなしでやらなくてもいいでしょう。

ある状況で開梱プロセスが失敗する理由について何か考えはありますか?

4

1 に答える 1

0

解凍プロセスは、生成されたランチャーを初めて呼び出すときに実行されます。JREライブラリを確実に解凍するために、すぐに戻るメインクラスを使用してダミーランチャーを呼び出すことができます。

于 2012-07-06T11:01:59.500 に答える