Roaming Computing System (Windows Edition) 3 - Java Runtime Environment (From Sun, later Oracle)

Contents

Notes

Version 1.6.0_03 - Incorporate OpenOffice.org download offer in the Update dialog.

JRE 1.6 update 21 / 6.0 update 21

Variant

'Windows Offline Installation' version from http://java.sun.com/javase/downloads/index.jsp, see below.

We will install a 'Family JRE', not a 'Static JRE', if the updater can update transparently.

There are various versions of the installer:

  • Those from a http://java.sun.com/javase/downloads/index.jsp which are aimed at developers or ISVs. We want the 'Windows Offline Installation' version with a filename of jre-6u19-windows-i586.exe. Also available here are 'Windows Online Installation' (jre-6u19-windows-i586-iftw-rv.exe) and 'Windows Kernel Installation' (jre-6u19-windows-i586-iftw-k.exe).
  • Those from http://www.java.com/en/download/manual.jsp which are aimed at consumers. The versions available here are 'Windows 7/XP/Vista/2000/2003/2008 Online' (same as the 'Windows Online Installation' above) (jre-6u19-windows-i586-iftw-rv.exe) and 'Windows 7/XP/Vista/2000/2003/2008 Offline' (not the same as the 'Windows Offline Installation' above) (jre-6u19-windows-i586-s.exe). In versions prior to update 19 or maybe 18 the installer filename ending in -s.exe tried to download the Google Toolbar so this may still be the case with this version.

See http://forums.java.net/jive/thread.jspa?messageID=263944 and http://weblogs.java.net/blog/kgh/archive/2005/10/java_se_and_the.html.

Version 1.6 update 21 / 6.0 update 21
Purpose
Required for
Installed to workstation
WPKG package.xml example page
Install format
Installation Instructions

Used installer option "EULA=1 indicates that End User License Agreement will be displayed on first use and not during installation" in place of "if CUSTOM=1 is used, the user will only see the license agreement, which must be accepted, and the progress bar."

Added installer option 'INSTALLDIR=%PROGRAMFILES%\java\jre'. Each JRE installaion uses 120MB of disk space. INSTALLDIR can't cope with directories with a space such as %PROGRAMFILES% or c:\program files; it works fine with something like c:\java\jre. See http://forum.java.sun.com/thread.jspa?threadID=5142913&tstart=60. What happens if we use the same installation directory and we install an update, is it ok to go in over the top?

JavaTM Runtime Environment Windows Installation for JavaSE 6u10: http://java.sun.com/javase/6/docs/technotes/guides/jweb/otherFeatures/jre_install.html#uninstallExamples

JavaTM Runtime Environment Update Scenarios for JavaSE 6u10: http://java.sun.com/javase/6/docs/technotes/guides/jweb/otherFeatures/jre_update_scenarios.html

"The patch-in-place mode implies that when a version of the JRE exists on a machine, any updates belonging to the same JRE family will be done in place, meaning, the existing JRE will be patched with changes. A JRE is installed in patch-in-place mode by default. The default installation directory is c:/Program Files/Java/jre where n is the Java SE minor version number (for example, n = 6 for version 1.6.0_10).

For example, if a user has previously installed JRE 6u10 in the c:/Program Files/Java/jre6 directory, and now attempts to install JRE 6u14, the version 6u14 installer does not create a new directory. Instead, it updates the pre-existing c:/Program Files/Java/jre6 directory with the new 6u14 content. The user is left with the 6u14 JRE only. The 6u10 JRE no longer exists."

Release Notes 'Java SE 6 Update Release Notes': http://java.sun.com/javase/6/webnotes/ReleaseNotes.html#160_07

'Java SE 6 Release Notes': http://java.sun.com/javase/6/webnotes/index.html

Changelog

6.0 update 21

6.0 update 20

6.0 update 19

6.0 update 18

6.0 update 17

6.0 update 16

6.0 update 15

6.0 update 14

6.0 update 13

6.0 update 12

Silent Installation and uninstallation

The uninstall string is easy to guess for minor updates, the minor update version number itself is at the end of the string and it is only this that changes.

http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment-guide/silent.html

The uninstall string between updates only changes according to, for example, update 4 has 40 at its end, update 7 has 70.

Configuration
  • On each machine, using TWEAK, Disable JRE updater: B → J → B
  • For each user, using TWEAK, set user cache to D:\%USERNAME%\java: B → J → M
Issues

We're installing into a version-specific directory

We can no longer use TWEAK's option 'B' to disable the updater - or can we?

JRE 1.6 update 11 / 6.0 update 11

Variant Full version / offline installer version (not download from the web version); -p.exe, not -p-s.exe version (without Google Toolbar downloader, not with)

We will install a 'Family JRE', not a 'Static JRE', if the updater can update transparently.

There are two versions of the installer:

See http://forums.java.net/jive/thread.jspa?messageID=263944 and http://weblogs.java.net/blog/kgh/archive/2005/10/java_se_and_the.html.

Version 1.6 update 11 / 6.0 update 11
Purpose
Required for
Installed to workstation
WPKG package.xml example page
Install format
Installation Instructions

Used installer option "EULA=1 indicates that End User License Agreement will be displayed on first use and not during installation" in place of "if CUSTOM=1 is used, the user will only see the license agreement, which must be accepted, and the progress bar."

Added installer option 'INSTALLDIR=%PROGRAMFILES%\java\jre'. Each JRE installaion uses 120MB of disk space. INSTALLDIR can't cope with directories with a space such as %PROGRAMFILES% or c:\program files; it works fine with something like c:\java\jre. See http://forum.java.sun.com/thread.jspa?threadID=5142913&tstart=60. What happens if we use the same installation directory and we install an update, is it ok to go in over the top?

JavaTM Runtime Environment Windows Installation for JavaSE 6u10: http://java.sun.com/javase/6/docs/technotes/guides/jweb/otherFeatures/jre_install.html#uninstallExamples

JavaTM Runtime Environment Update Scenarios for JavaSE 6u10: http://java.sun.com/javase/6/docs/technotes/guides/jweb/otherFeatures/jre_update_scenarios.html

"The patch-in-place mode implies that when a version of the JRE exists on a machine, any updates belonging to the same JRE family will be done in place, meaning, the existing JRE will be patched with changes. A JRE is installed in patch-in-place mode by default. The default installation directory is c:/Program Files/Java/jre where n is the Java SE minor version number (for example, n = 6 for version 1.6.0_10).

For example, if a user has previously installed JRE 6u10 in the c:/Program Files/Java/jre6 directory, and now attempts to install JRE 6u14, the version 6u14 installer does not create a new directory. Instead, it updates the pre-existing c:/Program Files/Java/jre6 directory with the new 6u14 content. The user is left with the 6u14 JRE only. The 6u10 JRE no longer exists."

Release Notes 'Java SE 6 Update Release Notes': http://java.sun.com/javase/6/webnotes/ReleaseNotes.html#160_07

'Java SE 6 Release Notes': http://java.sun.com/javase/6/webnotes/index.html

Silent Installation and uninstallation

The uninstall string is easy to guess for minor updates, the minor update version number itself is at the end of the string and it is only this that changes.

http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment-guide/silent.html

The uninstall string between updates only changes according to, for example, update 4 has 40 at its end, update 7 has 70.

Configuration
  • On each machine, using TWEAK, Disable JRE updater: B → J → B
  • For each user, using TWEAK, set user cache to D:\%USERNAME%\java: B → J → M
Issues

We're installing into a version-specific directory

We can no longer use TWEAK's option 'B' to disable the updater - or can we?

JRE 1.6 update 7 / 6.0 update 7

Variant

Full version / offline installer version (not download from the web version); -p.exe, not -p-s.exe version (without Google Toolbar downloader, not with)

There are two versions of the installer:

See http://forums.java.net/jive/thread.jspa?messageID=263944 and http://weblogs.java.net/blog/kgh/archive/2005/10/java_se_and_the.html.

Version 1.6 update 7 / 6.0 update 7
Purpose
Required for
Installed to workstation
WPKG package.xml example page
Install format
Installation Instructions

Used installer option "EULA=1 indicates that End User License Agreement will be displayed on first use and not during installation" in place of "if CUSTOM=1 is used, the user will only see the license agreement, which must be accepted, and the progress bar."

Added installer option 'INSTALLDIR=%PROGRAMFILES%\java\jre'. Each JRE installaion uses 120MB of disk space. INSTALLDIR can't cope with directories with a space such as %PROGRAMFILES% or c:\program files; it works fine with something like c:\java\jre. See http://forum.java.sun.com/thread.jspa?threadID=5142913&tstart=60. What happens if we use the same installation directory and we install an update, is it ok to go in over the top?

Release Notes 'Java SE 6 Update Release Notes': http://java.sun.com/javase/6/webnotes/ReleaseNotes.html#160_07

'Java SE 6 Release Notes': http://java.sun.com/javase/6/webnotes/index.html

Silent Installation and uninstallation

The uninstall string is easy to guess for minor updates, the minor update version number itself is at the end of the string and it is only this that changes.

http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment-guide/silent.html

The uninstall string between updates only changes according to, for example, update 4 has 40 at its end, update 7 has 70.

Configuration
  • On each machine, using TWEAK, Disable JRE updater: B → J → B
  • For each user, using TWEAK, set user cache to D:\%USERNAME%\java: B → J → M
Issues

We're installing into a version-specific directory

We can no longer use TWEAK's option 'B' to disable the updater - or can we?

JRE 1.6 update 1 / 6.0 update 4

Variant

Full version / offline installer version (not download from the web version); -p.exe, not -p-s.exe version (without Google Toolbar downloader, not with)

There are two versions of the installer:

See http://forums.java.net/jive/thread.jspa?messageID=263944 and http://weblogs.java.net/blog/kgh/archive/2005/10/java_se_and_the.html.

Version 1.6 update 1 / 6.0 update 4
Purpose
Required for
Installed to workstation
WPKG package.xml example page
Install format
Installation Instructions

Used installer option "EULA=1 indicates that End User License Agreement will be displayed on first use and not during installation" in place of "if CUSTOM=1 is used, the user will only see the license agreement, which must be accepted, and the progress bar."

Added installer option 'INSTALLDIR=%PROGRAMFILES%\java\jre'. Each JRE installaion uses 120MB of disk space. INSTALLDIR can't cope with directories with a space such as %PROGRAMFILES% or c:\program files; it works fine with something like c:\java\jre. See http://forum.java.sun.com/thread.jspa?threadID=5142913&tstart=60. What happens if we use the same installation directory and we install an update, is it ok to go in over the top?

Release Notes 'Java SE 6 Update Release Notes': http://java.sun.com/javase/6/webnotes/ReleaseNotes.html#160_04

'Java SE 6 Release Notes': http://java.sun.com/javase/6/webnotes/index.html

Silent Installation and uninstallation

The uninstall string is easy to guess for minor updates, the minor update version number itself is at the end of the string and it is only this that changes.

http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment-guide/silent.html

Configuration The uninstall string between updates only changes according to, for example, update 4 has 40 at its end, update 7 has 70.
Issues

We're installing into a version-specific directory

We can no longer use TWEAK's option 'B' to disable the updater - or can we?

JRE 1.6 update 1 / 6.0 update 1

Variant Full version, not download from the web version
Version 1.6 update 1 / 6.0 update 1
Purpose
Required for
Installed to workstation
WPKG package.xml example page
Install format
Installation Instructions

Used installer option "EULA=1 indicates that End User License Agreement will be displayed on first use and not during installation" in place of "if CUSTOM=1 is used, the user will only see the license agreement, which must be accepted, and the progress bar."

Added installer option 'INSTALLDIR=%PROGRAMFILES%\java\jre'. Each JRE installaion uses 120MB of disk space. INSTALLDIR can't cope with directories with a space such as %PROGRAMFILES% or c:\program files; it works fine with something like c:\java\jre. See http://forum.java.sun.com/thread.jspa?threadID=5142913&tstart=60. What happens if we use the same installation directory and we install an update, is it ok to go in over the top?

Release Notes 'Java SE 6 Update Release Notes': http://java.sun.com/javase/6/webnotes/ReleaseNotes.html#160_01 'Java SE 6 Release Notes': http://java.sun.com/javase/6/webnotes/index.html
Silent Installation and uninstallation http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment-guide/silent.html
Configuration The uninstall string between updates only changes according to, for example, update 4 has 40 at its end, update 7 has 70.
Issues

We're installing into a version-specific directory

We can no longer use TWEAK's option 'B' to disable the updater - or can we?

Things not working that could at least be set manually

- Update - Check for Updates automatically - on
[JAVAUPDATE=0 has been removed from the silent installer specification document]
- Advanced
	- Default Java for browsers - 
		- Microsoft Internet Explorer - off
		- Mozilla family - off
	- JRE Auto-Download - Always Auto-Download - should this be different?
	- Security - some settings here may be worthwhile

to disable the UpdateCheck that gets created in Autostart at first run of an Java app:
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy]
"EnableJavaUpdate"=dword:00000001
"PromptAutoUpdateCheck"=1

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy]
"EnableJavaUpdate"=dword:00000000
"PromptAutoUpdateCheck"=-

Update JAVAUPDATE command line option in JRE installer for PC-OEMs
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6257124

JRE v1.5 Update 6 and JAVAUPDATE=0    
http://forum.java.sun.com/thread.jspa?threadID=697798&messageID=4051238
"Currently, many PC-OEMs use the JAVAUPDATE=0 option to turn off Java Update for bundling. 
However, what we really want is for PC-OEMs to turn off Java Update but enable Java Plug-in to prompt 
users to turn on Java Update again on first run.

'Internet/Intranet Deployment of the Sun JRE' (extracting the MSI): 
http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment-guide/upgrade-guide/deployment.html
'Internet/Intranet Deployment of the Sun JRE': 
http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment-guide/upgrade-guide/deployment.html

We should change the JRE installer to turn off Java Update but enable first-run prompt in Java Plug-in if 
JAVAUPDATE=0 is passed."

JRE 1.5.0 update 8 / 5.0 update 8

Variant Full version, not download from the web version
Version 5.0u8 / 1.5.0 update 8
Purpose
Required for
Installed to workstation
WPKG package.xml example page http://wpkg.org/index.php/Java and http://wpkg.org/index.php/Sun_Java
Install format Windows Offline Installation

TWEAK has been updated for it, but still needs installer doing

If we install without updater, we can't use the 'update now' button which might be useful for some admins

update TWEAK with current Java switches to install for Firefox, not install updater and web start, etcetera. silent installer uses the same switches, apart from: "There is no WEBSTARTICON=0 command-line option below, as there is for version 1.4.2. That is because version 5.0 (also known as 1.5.0) does not create a Java Web Start icon. There is no NETSCAPE command-line option below, as there is for version 1.4.2. In release 5.0, the MOZILLA argument registers the JRE with both Mozilla and Netscape." - see http://java.sun.com/j2se/1.5.0/docs/guide/deployment/deployment-guide/silent.html

Installation Instructions http://java.sun.com/j2se/1.5.0/jre/install.html
Release Notes http://java.sun.com/j2se/1.5.0/ReleaseNotes.html
Silent Installation and uninstallation http://java.sun.com/j2se/1.5.0/docs/guide/deployment/deployment-guide/silent.html
Configuration

Java JRE 5.0 (1.5) Update 7. I've found the new Properties for 1.5 Update 5 and higher to do exactly what we did in prior versions. This makes it nice and clean for a deployment via AD and GPO without any stuff to bug your users (admin or otherwise). Tested on J2RE 1.5 Update 6 but the Properties are in Update 5 as well.

Using Orca or similar, create a new transform (mst) for the extracted msi file (instructions in other spots).

Here is the dump from my MST file using WiLstXfm.vbs from the platform sdk:

C:\cscript WiLstXfm.vbs "J2SE Runtime Environment 5.0 Update 6.msi" "J2RE-1.5.0.06.mst"
Property Value [IEXPLORER] {0}->{1}
Property Value [JAVAUPDATE] {1}->{0}
Property Value [AUTOUPDATECHECK] {1}->{0}
Property Value [JU] {1}->{0}
Property Value [MOZILLA] {0}->{1}
Property Value [SYSTRAY] {1}->{0}
Property Value [WEBSTARTICON] {1}->{0}

A quick break down of what each does in this MST (based on observations):

IEXPLORER=1 (default=0)
- This selects the IE plugin

JAVAUPDATE=0 (default=1)
- This turns off part of the JavaUpdate

AUTOUPDATECHECK=0 (default=1)
- This turns off part

JU=0 (default=1)
- I'm pretty sure this is the property everyone hated. This is the new property in Update 5 and 6 that 
turns on that update prompt and leaves JavaUpdate on even if the JAVAUPDATE property is set to 0
- If we're trying to figure out how to get rid of "PromptAutoUpdateCheck" under 
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy] to avoid the first run prompt, setting JU=0 
takes care of this.

MOZILLA=1 (default=0)
- This selects the Netscape/Mozilla plugin

SYSTRAY=0 (default=1)
- This turns off the system tray icon when java applets are active

WEBSTARTICON=0 (default=1)
- This disables the creation of the web start link on the desktop (I think, always had this off)

Here is a dump of the HKLM registry for the main keys covered to show the results of using these properites.

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in\1.5.0_06]
"JavaHome"="C:\\Program Files\\Java\\jre1.5.0_06"
"UseJava2IExplorer"=dword:00000001
"HideSystemTrayIcon"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy]
"EnableJavaUpdate"=dword:00000000
"EnableAutoUpdateCheck"=dword:00000000
"NotifyDownload"=dword:00000001
"NotifyInstall"=dword:00000001
"Frequency"=dword:01170000
"UpdateSchedule"=dword:00000013
"LastUpdateBeginTime"=""
"LastUpdateFinishTime"=""
"InstallOptions"=""
"UpdateDescription"=""

Issues