it-swarm-ja.com

複数のソフトウェアパッケージのインストーラースクリプト

古いJavaアプリケーションをWindowsへの依存関係が非常に多いものとしてパッケージ化する必要があります。実行可能な.jarをエクスポートし、依存するネイティブライブラリを取得しましたが、それでも作成する必要があります。次のように前提条件がインストールされていることを確認してください。

  1. JDK6または少なくともJRE6(binディレクトリを指す環境PATH変数を使用)
  2. クイックタイム
  3. WinVDIG

私はWindowsのバッチファイルやインストーラーの経験があまりないので、助けを借りることができます。

バンドルを作成している人もいます(たとえば、OpenNI/NITE/Driversをインストールして環境変数を設定するZigfuなど)。それらを作るのは簡単ですか?もしそうなら、どのように?それらは、一般的なユーザーには「クリーン」/簡単に見えます。

バッチファイルの方が簡単かもしれないと思いますよね?パッケージのインストールが完了したことを確認し、環境変数を設定/確認できますか?もしそうなら、どのように?

ありがとう!

2
George Profenza

JREインストール

:: Java Begin
START /WAIT %cd%\JRE16\jre-6u30-windows-i586.exe /s ADDLOCAL=jrecore IEXPLORER=1 MOZILLA=0 JAVAUPDATE=0 AUTOUPDATECHECK=0 REBOOT=ReallySuppress
IF EXIST "%ALLUSERSPROFILE%\Desktop\Java Web Start.LNK" DEL "%ALLUSERSPROFILE%\Desktop\Java Web Start.LNK"
IF EXIST "%PUBLIC%\Desktop\Java Web Start.LNK" DEL "%PUBLIC%\Desktop\Java Web Start.LNK"
IF EXIST "%ALLUSERSPROFILE%\Start Menu\Programs\Java Web Start\Java Web Start.LNK" RD /Q /S "%ALLUSERSPROFILE%\Start Menu\Programs\Java Web Start"
IF EXIST "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Java Web Start\Java Web Start.LNK" RD /Q /S "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Java Web Start"
:: Java Configure on x86 systems
REG ADD "HKLM\SOFTWARE\JavaSoft\Java Plug-in\1.6.0_24" /v HideSystemTrayIcon /t REG_DWORD /d 1 /f
REG ADD "HKLM\SOFTWARE\JavaSoft\Java Update\Policy" /v EnableJavaUpdate /t REG_DWORD /d 0 /f
REG ADD "HKLM\SOFTWARE\JavaSoft\Java Update\Policy" /v EnableAutoUpdateCheck /t REG_DWORD /d 0 /f
REG ADD "HKLM\SOFTWARE\JavaSoft\Java Update\Policy" /v NotifyDownload /t REG_DWORD /d 0 /f
REG ADD "HKLM\SOFTWARE\JavaSoft\Java Update\Policy" /v NotifyInstall /t REG_DWORD /d 0 /f
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v SunJavaUpdateSched /f
:: Java End

javaの高速化:

Java -Xshare:dump

クイックタイム:

QuickTimeInstaller.exe /extract

サイレントインストールmsi

バッチスクリプトを使用してQuickTimeのサイレントインストールを設定する方法

WinVDIG:

WinVDIGダウンロード

Inno Setup Unpacker info

Inno Setup Unpackerのダウンロード

winVDIGを解凍します。

innounp.exe -x WinVDIG_101.exe

install_script.issを参照してください

コピーファイルスクリプトを作成するか、msiを作成します

環境PATHでJavaを使用しないでください!

ああ、8-10をインストールJava VMそしてテストJava env ...それは動作しません。

使用する %APPDATA%\Sun\Java\Deployment\deployment.properties

deployment.javaws.jre.0.path=C\:\\App32\\Java\\jre6\\bin\\javaw.exe

javaを取得し、cmdでパスを設定し、JVMを実行します

JDKレジストリPowerShell

powershell gci 'hklm:\SOFTWARE\JavaSoft\Java Development Kit'-rec^|gp^|select JavaHome

JREレジストリPowerShell

powershell gci 'hklm:\SOFTWARE\JavaSoft\Java Runtime Environment'-rec^|gp^|select JavaHome

JavaWebstartレジストリPowerShell

powershell gci 'hklm:\SOFTWARE\JavaSoft\Java Web Start'-rec^|gp^|select Home

JVM 64:

dir /A:D /B %ProgramFiles%\Java

JVM 32:

dir /A:D /B %ProgramFiles(x86)%\Java
2
STTR

この場合、バッチファイルはお勧めしません。それらは非常に複雑になる可能性が高く、より良いソリューションが利用できる場合はあまり使用されません。

[〜#〜] nsis [〜#〜] または Inno Setup (さらに多くのリストがあります ここ )などのインストールシステム/インストーラー作成者を使用できます=)すべての個々のインストーラーを一緒にパッケージ化する単純なインストーラーを作成します。マスターインストーラーはファイルを抽出し、各インストーラーを順番に実行し(できれば、 サイレント/無人インストール を実行できるスイッチを使用して)、必要に応じて環境変数を設定し、その他の必要な操作を実行できます。最終的にクリーンアップする前に、レジストリの変更、ファイルの移動など。

それほど難しいことではないはずです。また、事前に作成されたインストールスクリプトがたくさんあります。 7-ZipWinRAR などのアーカイバを使用して、必要最低限​​のSFXインストーラーを作成することもできます。

1
Karan