Prepare for 2019
Oracle has announced that, effective January 2019, Java SE 8 public updates will no longer be available for “Business, Commercial or Production use” without a commercial license.
End of Public Updates for Oracle JDK 8
Is Oracle Java still free?
The current version of Java – Java SE 9 as well as Java SE 8 – is free and available for redistribution for general purpose computing. Java SE continues to be available under the Oracle Binary Code License (BCL) free of charge.
Java Runtime Environment (JRE) use for embedded devices or use of commercial features may require a license fee from Oracle. Read more about embedded use of Java SE, or contact your local Oracle sales representative to obtain a license.
What releases of Java technology are currently available?
The Java Platform, Standard Edition (Java SE) and Oracle Java SE Advanced and Suite products are currently shipping from Oracle in the form of the Java Development Kit (JDK), and Java Runtime Environment (JRE). The current releases of the software and links to older versions are available from the Java SE download page.
What are the Oracle Java licensing changes?
Due to the Oracle Java license cost changes, companies will need to collect and identify every application that is running Java SE 8 before the beginning of 2019. Doing so will ensure an accurate forecast of costs and potential non-compliance risk for future software audits in upcoming years.
What about the Java license costs?
The Oracle Technology Global Price List as of May 1, 2018 provides information about current pricing (in dollars):
|Products & Metrics||Named User Plus (NUP)||Software Update (License & Support)||Processor (Proc)||Software Update (License & Support)||*Note|
|Java SE Advanced Desktop||$40||$8.80||–||–||A|
|Java SE Advanced||$100||$22.00||$5,000||$1,100||B|
|Java SE Suite||$300||$66.00||$15,000||$3,300||B|
A: The Named User Plus minimum for this program is 2,000 NUP licenses.
B: The Named User Plus minimum for this program is 10 NUP per Processor.
What should you do now?
In light of Oracle’s recent announcement, companies should begin considering:
- How to anticipate the situation?
- How many Java installations do we have, where and why?
- Are there usages embedded?
- Can we replace Java with another technology?
- What will the cost be in January 2019?
Oracle suggests running a tool to ﬁnd Java installations using a Java package called Java Usage Tracker. This will report information like:
- The Java versions
- Application name
- Type (applet, command line, etc).
- Location and more
However, the Oracle Java Usage Tracker requires a commercial license 🙂 – even though it’s included in the installer that comes with the free components.
Disabling Java Updates
Small to Medium sized organizations may not want to pay and should consider disabling updates altogether.
Windows Server 2008R2/2012/2012R2/2016 (x64)
There’s a registry setting in HKEY_LOCAL_MACHINE that will allow you to completely disable both update notifications and the update functionality.
The full path of the key is HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy
The registry entry is named EnableJavaUpdate and is a DWORD value that defaults to 1 for the update functionality to be enabled. Setting the value to 0 disables updates.
When updates are enabled:
64-bit registry redirection:
There is a subkey located at HKLM\Software\Wow6432Node that contains the relevant settings for 32-bit applications, and within here, is the expected JavaSoft registry key. This is similar to the automatic system controlled C:\Windows\SysWOW64 directory for 32-bit compatiblity.
To disable updates, navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Update\Policy\
Create a new DWORD value called EnableAutoUpdateCheck , and set it to 0.
Change the key EnableJavaUpdate to 0; this stops any needing to install updates, and annoying prompts that non-admin users get for installing updates.
Windows Server 2003/2008 (x86)
Stop the update utility from running by deleting the key:
Reboot the server.
In rare cases the control panel needs to be opened as administrator. To do this follow the steps below:
Save this as Java32_Fix.reg and run and it will fix those javacpl.exe as Administrator/Control Panel issues once and for all:
Windows Registry Editor Version 5.00
Alternately, this is for 64bit OS’s running 32bit Java:
Windows Registry Editor Version 5.00
"C:\Program Files (x86)\Java\jre6\bin\javacpl.exe"="RUNASADMIN"