Hello,
Despite our efforts, we have not been able to install the JRE 8u45 (x86 Offline) through SCCM (both application and package model), under the SYSTEM account.
Yet the installation when running under an interactive user with administrative privileges succeed. To perform the installation, we execute the following batch file (install.cmd) :
if not exist %ALLUSERSPROFILE%\Oracle\Java md %ALLUSERSPROFILE%\Oracle\Java
type NUL > %ALLUSERSPROFILE%\Oracle\Java\java.settings.cfg
copy "%~dp0jre8u45.cfg" %windir%\temp\ /Y
START /B /WAIT %ComSpec% /c ""%~dp0jre-8u45-windows-i586.exe" INSTALLCFG=%windir%\temp\jre8u45.cfg /s /L C:\Log\jre-8u45.log"
The configuration file jre8u45.cfg sets the following options:
INSTALL_SILENT=1
AUTO_UPDATE=0
REBOOT=0
EULA=0
NOSTARTMENU=1
SPONSORS=0
WEB_ANALYTICS=0
WEB_JAVA=1
WEB_JAVA_SECURITY_LEVEL=H
Virtual Machine configuration:
- Windows 7 Enterprise Service Pack 1 (x64)
- JRE 1.6.0_35 (x86) installed
- No browser launched
- No Java process running
- Connected to internet through enterprise proxy server
Running under an interactive user with administrative privileges
When install.cmd is run from an elevated command prompt, the installation succeed.
C:\Log\jre-8u45.log
MSI (s) (E4:58) [09:03:22:275]: Executing op: ActionStart(Name=installexe,,)
MSI (s) (E4:58) [09:03:22:275]: Executing op: CustomActionSchedule(Action=installexe,ActionType=1042,Source=C:\Program Files (x86)\Java\jre1.8.0_45\installer.exe,Target=/s INSTALLDIR="C:\Program Files (x86)\Java\jre1.8.0_45\\" WEB_JAVA=1 WEB_JAVA_SECURITY_LEVEL=H WEB_ANALYTICS=0 INSTALLCFG="C:\WINDOWS\temp\jre8u45.cfg" EULA=0 NOSTARTMENU=1 INSTALL_SILENT=1 AUTO_UPDATE=0 SPONSORS=0 REPAIRMODE=0,)
Action ended 09:03:52: INSTALL. Return value 1.
MSI (s) (E4:58) [09:03:52:739]: Windows Installer installed the product. Product Name: Java 8 Update 45. Product Version: 8.0.450. Product Language: 1033. Manufacturer: Oracle Corporation. Installation success or error status: 0.
The following log files are also created:
- C:\Users\xxx\AppData\Local\Temp\jusched.log
- C:\Users\xxx\AppData\Local\Temp\JavaDeployReg.log
Running under the SYSTEM account
The application is installed through SCCM under the NT AUTHORITY\SYSTEM account.
During the tests, we simulated this context by running the install.cmd within the resulting command prompt: PsExec.exe -s %ComSpec%
The installation process froze after a while. The following lines are ending the log files:
C:\Log\jre-8u45.log
MSI (s) (AC:40) [09:14:16:953]: Executing op: CustomActionSchedule(Action=installexe,ActionType=1042,Source=C:\Program Files (x86)\Java\jre1.8.0_45\installer.exe,Target=/s INSTALLDIR="C:\Program Files (x86)\Java\jre1.8.0_45\\" WEB_JAVA=1 WEB_JAVA_SECURITY_LEVEL=H WEB_ANALYTICS=0 INSTALLCFG="C:\WINDOWS\temp\jre8u45.cfg" EULA=0 NOSTARTMENU=1 INSTALL_SILENT=1 AUTO_UPDATE=0 SPONSORS=0 REPAIRMODE=0,)
C:\WINDOWS\TEMP\jusched.log
TRACE: -- Calling RegisterDeploy().
[2016/09/21 09:52:25.285, installer.exe (PID: 2764, TID: 6432), regdeploy.cpp:191 (RegisterDeploy)]
INFO: setting SECURITY_LEVEL_HIGH
[2016/09/21 09:52:25.285, installer.exe (PID: 2764, TID: 6432), regdeploy.cpp:206 (RegisterDeploy)]
INFO: setting ENABLE_WEB_JAVA
The C:\WINDOWS\TEMP\JavaDeployReg.log file cannot be read, because the file is open in another program.
I run the following command to get the running Java processes:
Get-WmiObject -Class Win32_Process | ? { $_.Name -in ('installer.exe', 'javaws.exe', 'jp2launcher.exe', 'jre-8u45-windows-i586.exe') } | Select-Object -ExpandProperty CommandLine
"c:\Temp\1-8-0-45\jre-8u45-windows-i586.exe" INSTALLCFG=C:\WINDOWS\temp\jre8u45.cfg /s /L C:\Log\jre-8u45.log
"C:\Program Files (x86)\Java\jre1.8.0_45\installer.exe" /s INSTALLDIR="C:\Program Files (x86)\Java\jre1.8.0_45\\" WEB_JAVA=1 WEB_JAVA_SECURITY_LEVEL=H WEB_ANALYTICS=0 INSTALLCFG="C:\WINDOWS\temp\jre8u45.cfg" EULA=0 NOSTARTMENU=1 INSTALL_SILENT=1 AUTO_UPDATE=0 SPONSORS=0 REPAIRMODE=0
"C:\Program Files (x86)\Java\jre1.8.0_45\bin\javaws.exe" -wait -fix -permissions -silent
"C:\Program Files (x86)\Java\jre1.8.0_45\bin\jp2launcher.exe" -secure -javaws -jre "C:\Program Files (x86)\Java\jre1.8.0_45" -vma LWNsYXNzcGF0aABDOlxQcm9ncmFtIEZpbGVzICh4ODYpXEphdmFcanJlMS44LjBfNDVcbGliXGRlcGxveS5qYXIALURqYXZhLnNlY3VyaXR5LnBvbGljeT1maWxlOkM6XFByb2dyYW0gRmlsZXMgKHg4NilcSmF2YVxqcmUxLjguMF80NVxsaWJcc2VjdXJpdHlcamF2YXdzLnBvbGljeQAtRHRydXN0UHJveHk9dHJ1ZQAtWHZlcmlmeTpyZW1vdGUALURqbmxweC5ob21lPUM6XFByb2dyYW0gRmlsZXMgKHg4NilcSmF2YVxqcmUxLjguMF80NVxiaW4ALURqYXZhLnNlY3VyaXR5Lm1hbmFnZXIALURzdW4uYXd0Lndhcm11cD10cnVlAC1YYm9vdGNsYXNzcGF0aC9hOkM6XFByb2dyYW0gRmlsZXMgKHg4NilcSmF2YVxqcmUxLjguMF80NVxsaWJcamF2YXdzLmphcjtDOlxQcm9ncmFtIEZpbGVzICh4ODYpXEphdmFcanJlMS44LjBfNDVcbGliXGRlcGxveS5qYXI7QzpcUHJvZ3JhbSBGaWxlcyAoeDg2KVxKYXZhXGpyZTEuOC4wXzQ1XGxpYlxwbHVnaW4uamFyAC1EamF2YS5hd3QuaGVhZGxlc3M9dHJ1ZQAtRGpubHB4Lmp2bT1DOlxQcm9ncmFtIEZpbGVzICh4ODYpXEphdmFcanJlMS44LjBfNDVcYmluXGphdmF3LmV4ZQ== -ma LXdhaXQALWZpeAAtcGVybWlzc2lvbnMALXNpbGVudAAtbm90V2ViSmF2YQ==
The installation seems to be stuck at that point.
When the process jp2launcher.exe is terminated (twice), the installation then continues.
C:\WINDOWS\TEMP\JavaDeployReg.log ends with:
RegisterDeployEx return: TRUE
C:\WINDOWS\TEMP\jusched.log is appended:
INFO: setting ENABLE_WEB_JAVA
[2016/09/21 10:00:20.952, installer.exe (PID: 2764, TID: 6432), RegInstallJRE.cpp:158 (InstallJRE)]
TRACE: RegisterDeploy returned: 0
(…)
Sadly, the JRE is not properly installed (confirmed by https://www.java.com/verify/)
We have also tried to install the JRE wby using the extracted windows installer package (jre1.8.0_45.msi) instead of using the executable, without success.
Even if a transform file was applied (see https://maddog2050.wordpress.com/2014/10/27/gpo-deploying-java-8-update-25/). We have set the msidbCustomActionTypeNoImpersonate bit to the Type of the installexe CustomAction (Type = 3090), without success.
Same issue when the JRE 1.6.0_35 is uninstalled prior to the JRE 8u45 installation.
Does anyone have an idea?
Thanks in advance.