Izpack 5 Beta 11 を使用するテスト マシンで、バンドルされた 64 ビット Java を実行する 64 ビット winrun4j exe を使用して install.jar を起動すると、Izpack が文句を言う
There is no script engine for file extension ".js"
、次に不平を言いThe installer could not launch with administrator permissions
、管理者権限がないため、デフォルトのインストール ディレクトリにインストールしようとすると失敗します。C:/Program Files 以外の別のフォルダへのインストールは問題なく完了します。
一方、32ビットJavaを実行している32ビットwinrun4jインストーラーで実行すると、正常に動作します。
exeラッパーなしでinstall.jarを直接実行した場合
つまり、java -jar install.jar
32 ビット JVM と 64 ビット JVM の両方を使用すると、これらのエラーが発生します。
そのため、現時点で唯一有効な解決策は、32 ビット exe ラッパーを使用したインストールですが、64 ビット ラッパーも必要です。
だから質問は
- 32 ビット exe が機能し、64 ビット exe が機能しない理由
- ラッパーなしでインストールしようとすると、32 ビットまたは 64 ビットのどちらもインストールされないのはなぜですか。
ファローアップ
javascript エラー (Izpack ではない) に関するこのスレッドを見つけたところ、ほとんどのファイル タイプの編集に使用するエディターである Utlradedit に .js ファイルが関連付けられていることがわかりました。
.js と Ultraedit の関連付けを解除するだけで、実行時に
- java -jar install.jar 32 ビットの Java を 32 ビットの install.jar で使用
- java -jar install.jar 64 ビットの Java を 64 ビットの install.jar で使用
- 32 ビットの winrun4j ラッパー。
それは今動作します:)
しかし、64ビットのwinrun4jはインストールの開始に失敗し、まったく機能しません.コマンドウィンドウから実行すると、代わりにそれを見ることができます
ランニングの
wscript C:\Users\MESH\AppData\Local\Temp\Installer.js
c:\Code\WidgetReleases\1.0_Beta_2\widget-windows64\JVM64\bin\javaw.exe
-Dizpack.mode=privileged -jar
C:\Code\WidgetReleases\1.0_Beta_2\widget-windows64\install.jar
彼らは走りました
wscript C:\Users\MESH\AppData\Local\Temp\Installer.js
c:\Code\WidgetReleases\1.0_Beta_2\widget-windows64\JVM64\bin\javaw.exe
abort exit
-Dizpack.mode=privileged -jar
:\Code\WidgetReleases\1.0_Beta_2\widget-windows64\install.jar
したがって、フォローアップの質問は次のとおりです。
- ファイルタイプをエディターに関連付けるだけで、この JavaScript が機能しなくなるのはなぜですか。これまたは同様の問題が多くのユーザーに影響を与える可能性があると想像できます。
- 64 ビット ラッパーから実行すると、installer.js が Abort Exit を実行するのはなぜですか?