インストールの完了時に install4j Launcher を開始しようとしていますが、機能しません。ただし、ランチャーはスタート メニュー項目としては正常に機能します。これは、私のアプリケーションが Java Web Start を介して開始されたためであると考える理由があります (法的な理由によるものでなければなりません)。
install4j インストーラーで終了ボタンをクリックすると、次のようになります。
- インストーラ ウィンドウが消え、Java WebStart が起動します (スプラッシュが表示されます)。
- それ以上は何も起こりません (通常、私の Java アプリケーションはここから開始されます)。
Java ログを見ると、WebStart が実際に Java アプリを実行していることがわかりますが、ファイル C:\Users\UserName\AppData\Local\Temp\e4j2E4E.tmp_dir\jre\lib\ext \dnsns.jar はもう存在しません。このディレクトリは、install4j が実行する必要のある JRE を一時的に配置する場所のようです。
ファイル マネージャーで F5 キーを押すと、WebStart の実行後に JRE が削除されていることがわかります (おそらく install4j によるものだと思います)。これにより、Java アプリが失敗する理由が説明されます。
スタート メニュー ランチャーを (インストール後に手動で) 実行すると、Java アプリは (独自のサブフォルダーに) バンドルされている JRE を使用するため、すべて正常に動作します。
install4j が一時的な JRE を削除するのを防ぐにはどうすればよいですか? または、WebStart が別の (バンドルされた) JRE を使用して Java アプリを強制的に実行するようにするにはどうすればよいですか?
提案をお寄せいただきありがとうございます!
==EDIT== これが私のアプリケーションの開始方法です: install4j Launcher は、メインの Java アプリケーションを開始する javaws バイナリを開始する私の Java クラスを開始します。