Oracle Java Runtime Environment

Views: 5.4k  |  Created: 09/10/2014 by: packageologist

Average Rating: 0
Java Runtime Environment has 1 inventory records, 49 Questions, 6 Blogs and 17 links. Please help add to this by sharing more!

Deployment Tips (2)

Most Common Setup Type
Windows Installer (MSI)
Average Package Difficulty Rating
Rated 4 / 5 (Somewhat Difficult) based on 1 ratings
Most Commonly Reported Deployment Method
Windows Installer with Custom Transform (MST)
or cancel
3
Note
Java 8 update 11 is much the same as v7, but Java 8 update 20 has changed quite a bit. Release notes:

http://www.oracle.com/technetwork/java/javase/8u20-relnotes-2257729.html

The MSI has far fewer custom actions and also some new install properties:

http://docs.oracle.com/javase/8/docs/technotes/guides/install/config.html

Of particular note are:

  • AUTO_UPDATE - Setting properties to prevent updates has been irrelevant since v6u19 when Oracle started putting the updater down as a separate MSI.  Since I am deploying the Java MSI only I don't think this needs to be set - but no harm in doing so I suppose, so set it to 0.
  • NOSTARTMENU - Setting this to 1 stops the installer creating any start menu shortcuts. Worth doing to get rid of the update shortcuts etc, Java config is in the Control Panel anyway if anyone needs it.
  • STATIC - I tried setting this to different values but it always seems to create a static install (see below)
v6 and v7 (and v8 prior to update 20) install to a generic major version folder e.g. C:\Program Files\Java\jre7 by default, and each minor version update removes the previous version. There was a custom install option though known as a 'static' install that would install it to a version specific folder and leave it behind on future upgrades.

v8u20 seems to do this static install behaviour by default, installing to C:\Program Files\Java\jre1.8.0_20, and installing this on top of v8u11 will leave the older version behind. Eventually you would end up with loads of Java versions installed instead of just the latest one. The workaround if you want it to behave like the older version is to edit the INSTALLDIR row of the Directory table to C:\Program Files\Java\jre8 and copy the Upgrade table row 'CONSUMERPRODUCTFOUND' from a previous version (e.g. 8u11).
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s):
Please log in to comment
0
Script
'Cleanup Script to Uninstall All Previous Versions of JRE
'On Error Resume Next

Const HKLM = &h80000002

Const SearchValue = "DisplayName"
Const MatchData   = "JAVA"

Set objShell = WScript.CreateObject("WScript.Shell")
Set reg = GetObject("winmgmts://./root/default:StdRegProv")

strProgramFiles = objShell.ExpandEnvironmentStrings("%ProgramFiles(x86)%" & "\")

If InStr(strProgramFiles,"%") Then
  StartKey = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"
  FindAppKey HKLM, StartKey, SearchValue, MatchData
Else 
  StartKey1 = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"
  StartKey2 = "SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall"
  FindAppKey HKLM, StartKey1, SearchValue, MatchData
  FindAppKey HKLM, StartKey2, SearchValue, MatchData
End If


Sub FindAppKey(root, key, value, data)
  reg.EnumValues HKLM, key, names, types
  If Not IsNull(names) Then
    For Each name In names
      
      If name = value Then
        reg.GetStringValue HKLM, key, name, regdata
strRegData = UCase(regdata)
        If InStr(strRegData, data) Then
 If InStr(strRegData,"UPDATER") OR InStr(strRegData,"DEVELOPMENT")Then
            'Do Nothing
 Else
   reg.GetStringValue HKLM, key, "UninstallString", strPdtCode
   strUninstallString = strPdtCode & " /qn REBOOT=ReallySuppress"
            'Msgbox strUninstallString
   objShell.Run strUninstallString,0,True
 End If
        End If
      End If
    Next
  End If

  'value not found in current key => continue search in subkeys
  reg.EnumKey root, key, subkeys
  If Not IsNull(subkeys) Then
    For Each sk In subkeys
      FindAppKey root, key & "\" & sk, value, data
    Next
  End If
End Sub


'#### Run seperate command for JAVA Auto Updater Uninstallaton
objShell.Run "msiexec.exe /X{4a03706f-666a-4037-7777-5f2748764d10} /qn REBOOT=ReallySuppress", 0, true

'##### Use Sysnative in Program commandline


Setup Information:
Setup Type: Windows Installer (MSI)
Deployment Method Used: Windows Installer with Custom Transform (MST)
Deployment Difficulty: Somewhat Difficult
Platform(s): Windows
Please log in to comment

Inventory Records (1)

View inventory records anonymously contributed by opt-in users of the K1000 Systems Management Appliance.

Versions

Java Runtime Environment

Version

8.x

Questions & Answers (49)

Questions & Answers related to Oracle Java Runtime Environment

67
ANSWERS
1
ANSWERED
2
ANSWERS
6
ANSWERS
3
ANSWERED
1
ANSWERS
4
ANSWERS
6
ANSWERED
2
ANSWERS

Blogs (6)

Blog posts related to Oracle Java Runtime Environment

Reviews (0)

Reviews related to Oracle Java Runtime Environment