Aktionen

Windows:Java 6 x86 Installation auf 64bit

Aus znilwiki

Version vom 24. Juni 2012, 20:16 Uhr von BLinz (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Für ein automatisches Deployment eines Servers ist es auch immer schön, wenn man möglichs viele Teile der Softwareverteilung ebenfalls automatisieren kann. Hierbei kann ein entsprechendes Tool (z.B. Altiris oder NetInstall) eingesetzt werden oder aber nur simple Batch Programmierung.

Wenn man nun an den Punkt kommt, dass man das aktuelle Java Plugin installieren möchte, stößt man aber leider auf ein dummes Problem.

Die meisten Installations-Tools verwenden den SYSTEM Account um die Installationen durchzuführen.

Versucht man nun über solch eine Methode, die 32bit Version von JAVA auf einem 64bit Server (z.B. Server 2008R2) zu installieren, scheitert die Installation und man bekommt als Fehlermeldung vom MSI Installer folgendes geliefert:

MSI Error 1619
This installation package could not be opened. Verify that the package exists and that you can access it, or contact the application vendor to verify that this is a valid Windows Installer package.
ERROR_INSTALL_PACKAGE_OPEN_FAILED

Dann versucht man alles, was man so gelernt hat über Deployment (Log File Analyse, Datei auf lokelen Datenträger, Pfade ohne Leer- / Sonderzeichen etc.) und scheitert leider trotzdem.

Folgender Bug liegt dem Phänomen zugrunde:

On 64-bit hosts installing the exe doesn't work. 
jre-6uXX-windows-i586.exe is a 32bit app containing a msi, a cab and some other files. 
On a 32-bit host it unpacks in in c:\Windows\system32\config\systemprofile\AppData\LocalLow\Sun\Java\jre1.6.0_17\. 
On a 64-bit host it unpacks in c:\Windows\SysWOW64\config\systemprofile\AppData\LocalLow\Sun\Java\jre1.6.0_17\.
The silent install on a 64-bit host is still looking for the msi in the *System32* directory.

Die einizige Chance, dem Fehler zu entgehen ist es, die EXE Datei zu entpacken und das zugrunde liegende MSI direkt über den msiexec Installer zu installieren. Hierfür muss die EXE einmal auf einem System aufgeführt werden.

Anschließend kann aus dem Verzeichnis %APPDATA%\LocalLow\Sun\Java\jre1.6.0_XX das MSI inclusive CAB und MST Datei kopiert werden. Mit diesem MSI kann man nun auf anderen Systemen eine automatisierte Installation durchführen, die auch mit dem SYSTEM Account funktioniert!

Noch ein externer Link zu dem Thema auf APPDeploy: http://www.appdeploy.com/messageboards/tm.asp?m=60816

Loading comments...