Changes

Java

448 bytes added, 14:52, 17 December 2009
Install JRE with msi without removing old version in a mixed 32-bit/64-bit environment: You should install both 32-bit and 64-bit java on 64-bit machines
jre-6u17-windows-i586-s.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 32-bit *System32* directory.
So the best thing to do is to install the msi package.
Copy the content of \Windows\SysWOW64\config\systemprofile\AppData\LocalLow\Sun\Java\jre1.6.0_17
on your server and install from it.
 
You should install both 32-bit and 64-bit java on 64-bit machines if you want a 32-bit browser being able to use java.
In this example, no uninstall of the old java versions as it is quite time consuming.
<packages>
<!-- new jre install with the msi ; for 32-bit and 64-bit hosts only -->
<package
id="jre"
>
<check type="logical" condition="or">
<check
type="registry"
condition="equals"
path="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE"
value="AMD64"
/>
<check
type="uninstall"
<check
type="registry"
condition="equals" path="HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216017FF}\DisplayName"
value="Java(TM) 6 Update 17"
/>
condition="versiongreaterorequal"
path="%PROGRAMFILES(x86)%\Java\jre6\bin\java.exe"
value="6.0.170.4"
/>
<check
type="file"
condition="versiongreaterorequal"
path="%PROGRAMFILES%\Java\jre6\bin\java.exe"
value="6.0.170.4"
/>
cmd='msiexec /qn /i %SOFTWARE%\jre\jre1.6.0_17.msi ADDLOCAL=ALL REBOOT=Suppress IEXPLORER=1 MOZILLA=1 JAVAUPDATE=0 CUSTOM=1'
/>
<install cmd='%COMSPEC% /C if exist "%PROGRAMFILES%\Java\jre6\bin\jqs.exe %PROGRAMFILES%\Java\jre6\bin\jqs.exe -unregister'>
<exit code='1' />
</install>
<install cmd='%COMSPEC% /C if exist "%PROGRAMFILES(x86)%\Java\jre6\bin\jqs.exe %PROGRAMFILES%\Java\jre6\bin\jqs.exe -unregister'>
<exit code='1' />
</install>
<upgrade cmd='taskkill /f /im jqs.exe /im iexplore.exe /im firefox.exe' >
<exit code='1' />
</upgrade>
<upgrade cmd='%COMSPEC% /C if exist "%PROGRAMFILES(x86)%\Java\jre6\bin\jqs.exe %PROGRAMFILES%\Java\jre6\bin\jqs.exe -unregister'>
<exit code='1' />
</upgrade>
</package>
<!-- new jre 64-bit install with the msi ; for 64-bit hosts only -->
<package
id="jre-64"
type="file"
condition="versiongreaterorequal"
path="%PROGRAMFILES%\Java\jre6jre\bin\java.exe"
value="6.0.170.4"
/>
</install>
<install
cmd='msiexec /qn /i %SOFTWARE%\jre-64\jre1.6.0_17.msi ADDLOCAL=ALL REBOOT=Suppress IEXPLORER=1 MOZILLA=1 JAVAUPDATE=0 CUSTOM=1'
/>
</upgrade>
<upgrade
cmd='msiexec /qn /i %SOFTWARE%\jre-64\jre1.6.0_17.msi ADDLOCAL=ALL REBOOT=Suppress IEXPLORER=1 MOZILLA=1 JAVAUPDATE=0 CUSTOM=1'
/>
43
edits