Установочный скрипт для нескольких пакетов программного обеспечения

Мне нужно будет упаковать старое Java-приложение с его зависимостями от Windows, которых довольно много. Я экспортировал работающий.jar и получил зависимые нативные библиотеки, но все же мне нужно убедиться, что установлены необходимые компоненты, такие как:

  1. JDK6 или хотя бы JRE6 (переменная окружения PATH указывает на каталог bin)
  2. Quicktime
  3. WinVDIG

У меня нет большого опыта работы с пакетными файлами или установщиками в Windows, поэтому я мог бы использовать некоторую помощь.

Я вижу, что некоторые люди делают пакеты (например, Zigfu, который устанавливает OpenNI/NITE/Drivers и устанавливает переменные среды). Это легко сделать? Если да, то как? Они выглядят "чисто" / легче для обычного пользователя.

Я полагаю, что пакетный файл может быть проще, не так ли? Могу ли я проверить, когда пакет завершил установку, и установить / проверить переменные среды? Если так, то как?

Спасибо!

2 ответа

Решение

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

Quicktime:

QuickTimeInstaller.exe /extract

тихая установка MSI

Как настроить автоматическую установку QuickTime через пакетный скрипт

WinVDIG:

WinVDIG скачать

Inno Setup Информация о распаковщике

Inno Setup Unpacker скачать

распаковать WinVDIG:

innounp.exe -x WinVDIG_101.exe

см.install_script.iss

написать копию файла сценария или создать MSI

Не использовать Java в среде PATH!

О, установите 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

PowerShell для реестра JDK

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

PowerShell для реестра JRE

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

PowerShell реестра Java Webstart

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

Я не рекомендовал бы пакетные файлы в этом случае. Скорее всего, они станут довольно сложными, и, когда будут доступны более эффективные решения, их будет мало.

Вы можете использовать установщик системы / установщика, такой как NSIS или Inno Setup (многое другое здесь указано), чтобы создать простой установщик, который объединяет все отдельные установщики вместе. Ваш главный установщик может извлекать файлы, запускать каждый установщик по очереди (предпочтительно с помощью переключателей, которые позволят вам выполнить автоматическую / автоматическую установку), затем устанавливать переменные среды по мере необходимости и делать все, что вы хотите, например, изменять реестр, перемещать файлы и так далее, прежде чем окончательно убирать.

Это не должно быть все так сложно, и есть много готовых сценариев установки. Push-up приходит к выводу, что вы даже можете создать простой SFX-установщик, используя такой архиватор, как 7-Zip или WinRAR.

Другие вопросы по тегам