Deploy Java Installation and Updates via Windows GPO

Getting the Java .msi

  1. Download the offline Java installer Download
  2. Start the downloaded Java installer, but don't go past the initial screen
  3. Open Windows Explorer and navigate to %userprofile%\AppData\LocalLow\Oracle\Java\
  4. Open the folder for the version of Java and copy the Java .msi to a different folder (ie Downloads, Desktop, etc)
  5. Cancel the Java installation

Creating Software Share

  1. Log into a domain controller
  2. Create a folder somewhere to share for software distribution (ie c:\gpo_files)
  3. Right click on the created folder > Properties > Sharing tab > Advanced Sharing...
  4. Click the Share this folder box
  5. Give the share a name (ie gpo_files)
  6. Click the Permissions button
  7. Remove the Everyone group
  8. Add Authenticated Users
  9. Click OK on all open dialog boxes
  10. Copy the Java .msi from earlier into the new shared folder

Creating the GPO to Push Java

  1. Still logged into the domain controller, right click on the Start button > Run > type gpmc.msc > Press Enter
  2. Expand Forest: %domainname% > Domains > %domainname%
  3. Right click on the domain name > Create a GPO in this domain, and link it here...
  4. Name the new GPO Software Distribution
  5. Right click the Software Distribution GPO > Edit...
  6. In the Group Policy Management Editor expand Computer Configuration > Policies > Software Settings > Software installation
  7. Right click Software installation > New > Package...
  8. When the file dialog appears, point it to the Java .msi using the share created earlier (ie \\domain_controller\gpo_files\javax64.msi)
  9. Leave the deployment method as Assigned > Click OK
  10. Close out of all open Group Policy Management Editor windows
  11. On client domain devices right click the Start button > Run > type gpupdate /force > Press Enter
  12. After the group policy update completes, reboot the device
  13. During the boot process the Java from the software distribution GPO will be installed