W trakcie instalacji środowiska Java 8, może pojawić się błąd 1722, uniemożliwiający dalszą instalację programu. Błąd ten dotyczy zarówno 32 jak i 64-bitowej wersji Javy.

Komunikat błędu:

Error 1722 . There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor.

Błąd 1722. Istnieje problem z tym pakietem Instalatora Windows. Program uruchomiony jako część instalatora nie zakończył działania zgodnie z oczekiwaniami. Proszę się skontaktować z działem asysty technicznej lub z dostawcą pakietu.

W logu instalacyjnym zapisywana jest następująca informacja:

MSI (s) (58:1C) [13:45:51:186]: Note: 1: 1722 2: installexe 3: C:\Program Files (x86)\Java\jre1.8.0_101\installer.exe 4:  INSTALLDIR=”C:\Program Files (x86)\Java\jre1.8.0_101\\” WEB_JAVA_SECURITY_LEVEL=H STATIC=1 WEB_ANALYTICS=0 EULA=0 NOSTARTMENU=1 INSTALL_SILENT=1 AUTO_UPDATE=0 SPONSORS=0 REPAIRMODE=0 ProductCode={26A24AE4-039D-4CA4-87B4-2F32180101F0}

CustomAction installexe returned actual error code 61016 (note this may not be 100% accurate if translation happened inside sandbox)

MSI (s) (58:1C) [13:47:54:641]: Product: Java 8 Update 101 — Error 1722. There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. Action installexe, location: C:\Program Files (x86)\Java\jre1.8.0_101\installer.exe, command:  INSTALLDIR=”C:\Program Files (x86)\Java\jre1.8.0_101\\” WEB_JAVA_SECURITY_LEVEL=H STATIC=1 WEB_ANALYTICS=0 EULA=0 NOSTARTMENU=1 INSTALL_SILENT=1 AUTO_UPDATE=0 SPONSORS=0 REPAIRMODE=0 ProductCode={26A24AE4-039D-4CA4-87B4-2F32180101F0}

 

Analiza logu instlacyjnego oraz przykładowe rozwiązanie problemu:

 

  • Podczas instalacji plik ?installer.exe? jest kopiowany do katalogu instalacyjnego Javy. Następnie akcji ?SetCMDLine? przekazywane są właściwości pobrane z tabeli ?Property?. Kolejno wykonywana jest akcja ?installexe?, uruchamiająca installera Javy wraz z wczytanymi wcześniej właściwościami z tabeli ?Property?. Proces instalacji pakietu przerywany jest po po pojawieniu się błędu Windows Installera o numerze 1722.
  • Elementem wywołującym błąd instalacji jest akcja ?installexe? (zwracająca kod 61016), która jest uruchamiana (w przypadku instlacji przy użyciu SCCM) z niewystarczającymi uprawnieniami. Akcja ?instalexe? ma przypisaną wartość 1024 (?Defered Execusion ? User Context?) czyli jest uruchamiana w kontekście aktualnie zalogowanego użytkownika. Powinna być wykonywana w kontekście konta systemowego (?Defered Execusion ? System Context?, wartość 3090).
Tabela "CustomAction" w pakiecie Java 1.8.101 (x64)

Tabela „CustomAction” w pakiecie Java 1.8.101 (x64)

  • Zmiana tej wartości w tabeli ?CustomAction?, prowadzi ponownie do wygenerowania błędu instalacji (braku pliku ?java.settings.cfg?). Plik ten jest plikiem tymczasowym, przechowującym właściwości pobrane z tabeli ?Property?. Dodanie pliku do pakietu .msi, rozwiązuje problem błędnej instalacji.

 

W sekcji „Pakiety-MSI” znajduje się gotowy szablon (download), który można użyc do instalacji dowolnej wersji środowiska Java 1.8.X (gdzie X jest numerem aktualizacji). W skład szablonu wchodzą następujące pliki: ?jre1.8.0_101.mst?, ?jre1.8.0_10164.mst? oraz ?Data1.cab?, zawierające poprawki oraz ustawienia wyłączające automatyczne aktualizacje Javy. W systemach 64 ? bitowych zalecane jest zainstalowanie obu wersji Javy (tzn. 32 i 64 – bitowej). Pliki .msi obu pakietów można uzyskać poprzez ściągnięcie ze strony producenta instalatorów „offline” : „jre-8uX-windows-i586.exe” oraz „jre-8uX-windows-x64.exe” i uruchomienie ich. Po wyświetleiu się pierwszego okienka instalacyjnego, należy przejść do (?%USERPROFILE%\AppData\LocalLow\Oracle\Java\”) i skopiować interesujące nas pliki .msi.

 

Instalacja:

x86:

msiexec /i ?…jre1.8.0_101.mst? TRANSFORMS=?…jre1.8.0_101.mst? /qn

x86 + x64

msiexec /i ?…jre1.8.0_101.mst? TRANSFORMS=?…jre1.8.0_101.mst? /qn

msiexec /i ?…jre1.8.0_10164.mst? TRANSFORMS=?…jre1.8.0_10164.mst? /qn

Ścieżkę dostępu (…) można zastąpić, poprzez dodanie następującego ciągu znaków: %~dp0. Przykładowa komenda będzie wtedy wyglądała następująco:

msiexec /i ?%~dp0jre1.8.0_101.mst? TRANSFORMS=?%~dp0jre1.8.0_101.mst? /qn

 

Deinstalacja:

x86:

msiexec /x [ProductCode] /qn

dla opisywanej wersji 1.8 Update 101

msiexec /x {26A24AE4-039D-4CA4-87B4-2F32180101F0} /qn

x86 + x64

msiexec /x {26A24AE4-039D-4CA4-87B4-2F32180101F0} /qn

msiexec /x {26A24AE4-039D-4CA4-87B4-2F64180101F0} /qn

Be Sociable, Share!