Oracle's Java Licensing Changes 2023: Optimizing Java Without Cutting a Check to Oracle

Introduction

Java is a programming language and computing platform that was initially developed by Sun Microsystems in the early 1990s. It was designed to be platform-independent, allowing applications to run on any device or operating system. Java remained free and open source for many years resulting in Java being installed everywhere in your environment. In 2019, Oracle introduced a new per-year subscription licensing model for Java, which requires organizations to pay for commercial use of Oracle Java.

However, with Oracle’s recent changes to Java licensing, organizations need to rethink their Java strategies. In this blog post, we’ll explore alternatives and actionable steps to optimize Java, reduce costs, and ensure compliance amidst Oracle’s licensing changes. From exploring third-party support to leveraging volume-based discounts, join us on this journey to maximize the benefits of Java while staying in line with licensing regulations.

Optimizing Oracle Java and reducing dependency on Java is critical for organizations even if they have active commercial contracts as Oracle Java is a per-year subscription license where pricing and value are not aligning for most customers, so sooner or later, customers will have to move off Java.

All the options listed below require upfront effort, particularly for the technical owners/administrators of the servers, end-user computing, and related systems. These individuals are often not the ones responsible for the significant payment to Oracle, which can result in resistance to implementing changes. However, there is a proven technique that has been successful for various customers in optimizing their strategy. This approach involves conducting a Java-specific ELP (Enterprise license position analysis), which accurately identifies all Java installations and provides a high-level estimate of the cost associated with these licenses. It quantifies all commercial expenses based on various Oracle licensing models, equipping senior management or those responsible for payment to Oracle with the necessary data to challenge any resistance from the technical team. Java ELP helps the decision-makers decide if the pushback from the technical side outweighs the financial implications; the decision-makers can then make an informed choice about the most cost-effective course of action.

Explore Third-Party Open JDK

An effective way to run Java without incurring Oracle licensing costs is by considering third-party support options. One such option is to replace Oracle's Java Runtime Environment (JRE) with an alternative version called OpenJDK. OpenJDK can serve as a suitable replacement and help reduce expenses.

The origin of OpenJDK dates to January 2019 when Oracle monetized Java and forked a free version of Java to the open-source community. This led to the development of the "forked" use of the software, where companies like Red Hat, Azul, and Amazon adopted the open-source version and took responsibility for providing support and patches to the Java runtime code for OpenJDK.

By utilizing OpenJDK, you can eliminate the need for Oracle JRE licenses and leverage the free-to-use nature of OpenJDK. However, it's important to note that you will still require support, which can be obtained from third-party vendors such as Red Hat, Amazon, or Azul. The support cost may vary among these vendors, so it's advisable to explore different options and select the one that best suits your needs, but overall, they are far cheaper than Oracle JRE.

Uninstall Unused Java and Plan to Discourage Future Oracle Java Usage.

Given that Java was once freely available, many customers initially installed it on all their laptops/servers, including those where it may not be necessary. However, experience has shown that Java is typically utilized on only about 25% of servers and a fraction of desktops within most companies. To optimize costs, it is recommended to identify the specific locations where Java is genuinely required and uninstall it from the remaining unnecessary installations.

To begin this process, generate a detailed baseline that indicates every location where Java is installed. Next, identify the precise locations where Java is required and proceed to uninstall it from the remaining locations. It is crucial to conduct thorough testing to ensure no issues arise from the removal of Java on the affected servers.

Many companies leverage existing tools for this process, such as Microsoft's system management tool called SCCM for Windows servers or other tools like BigFix and Tanium for Linux-based systems. These tools facilitate the identification and management of Java installations, making the process more streamlined and efficient.

To prevent future Java downloads and installations, you can use a firewall or content filtering system to block access to Java.com and implement a proxy server for the same purpose. Additionally, you can use software restriction policies on Windows to block the execution of Java installers and employ application whitelisting or blacklisting to further control Java installations. Educating your employees about the reasons behind blocking Java and the potential licensing risks associated with its usage will help ensure compliance with company policies.

Move to Temporarily “Free” Oracle Java Versions Like Java 17 or Java 21:

Another option to consider for optimizing your Java footprint and reducing costs is to migrate to Oracle No-Fee Terms and Conditions (NFTC) versions of Java, such as Java 17 or Java 21. These versions offer the advantage of being freely available for usage without incurring any licensing fees for a “limited” time. Java 17 is free until September 2024. After that, to get Java free, customers must move to Java 21, else commercial fees will apply.

Move to Oracle OCI - Java Available for Free:

Businesses seeking a cost-effective and feature-rich solution for Java can find an attractive proposition in Oracle Cloud Infrastructure (OCI). With an OCI subscription, customers gain access to Oracle Java SE, fully supported and free of additional charges. Customers should be aware that by selecting this option they risk getting trapped further in the Oracle ecosystem plus customers should evaluate the OCI business case versus other hyper scalars like Azure, AWS, etc.

Other Considerations

In addition to the recommended steps mentioned earlier, there are other important considerations to keep in mind when optimizing your Java Commercials and navigating the Oracle licensing changes.

Use Volume Tier’s to Your Advantage

Let’s say, suppose a company has 9000 employees.

Option A

Option B (Increase 1000 employees)

No of Employees

Employee Tier

Price per Employee (per month)

Price per Employee (per year)

No of Employees

Employee Tier

Price per Employee (per month) 

Price per Employee (per year)

9000

3,000—9,999

$10.50

$126

10000

(9000+1000)

10,000—19,999

$8.25

$99

Total Subscription Price (per year)

$1,134,000

Total Subscription Price (per year)

$990,000

Option A - 9000 Employees:

For Option A, the company decides to go with all 9000 employees. At the non-discounted price of $10.50 per month ($126 per year) per employee, the total subscription price would amount to $1,134,000 per year (9000 employees * $126 per employee).

Option B - 10,000 Employees:

In Option B, if the company chooses to increase its number of licensed employees to 10,000, which falls within the 10,000-19,999 employees tier. The subscription price for this option would be $990,000 per year.

By selecting Option B and licensing 1000 more employees, the company achieves a significant cost reduction of approximately $144,000 per year compared to Option A. This cost-saving advantage makes Option B an attractive choice, offering financial benefits without compromising on the number of licensed employees.

If You Are Grandfathered Into the Old Model (Processor + NUP), Hold On to it

If your organization is fortunate enough to be grandfathered into the old Java licensing model, where Named User Plus or Processor licenses are still applicable, it may be beneficial to hold on to that arrangement. The old model may provide more favorable terms and pricing compared to the new Employee for Java SE Universal metric. However, it is crucial to carefully review the terms and conditions of your existing licensing agreement to ensure compliance and understand any potential limitations or expiration dates.

Do Nothing Until Oracle Knocks on the Door!

While it may be tempting to avoid taking any action and hope to fly under the radar regarding the Oracle Java licensing changes, it is important to understand the potential security risks and commercial back penalty consequences of such a strategy. Here are some considerations if you choose to take this approach:

Continue Using Older Non-Commercial Versions of Java

One option is to continue using older versions of Java that were available before the licensing changes. However, this approach comes with its own set of risks and drawbacks. Older versions may lack the latest security patches and bug fixes, leaving your systems vulnerable to potential threats. Additionally, Oracle may discontinue support and updates for older versions, leaving you exposed to compatibility issues with newer applications and technologies.

Disabling Auto Updater

To maintain your current Java Version and avoid any potential updates that may trigger licensing changes, you can choose to disable the auto updater feature. This prevents automatic updates from being installed on your systems. However, disabling the auto updater means missing out on important security patches and updates that address vulnerabilities and improve performance. It is crucial to weigh the risks of running outdated software against the potential benefits of avoiding licensing changes.

There are two ways to disable Java auto updater:

  1. Using the Java Control Panel
    1. Open the Java Control Panel.
    2. Click on the Update tab.
    3. Uncheck the Check for Updates Automatically checkbox.
    4. Click Apply and then OK
  2. Using the Registry Editor
    1. Open the Registry Editor.
    2. Navigate to the following key:
    3. HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy.
    4. Double-click on the EnableAutoUpdateCheck value and set its value to 0.
    5. Double-click on the EnableJavaUpdate value and set its value to 0.

https://www.java.com/en/download/help/java_update.html

Do a Manual Installation to Prevent Oracle From Tracking Java Digital Downloads for Bundled Java

Oracle closely monitors Java downloads, and even if you download bundled Java, such as with Weblogic, Oracle will track it and you might end up on the naughty list. To avoid this tracking, one effective approach is to opt for manual installations of Java. By manually installing Java on your systems, you can mitigate the risk of being tracked by Oracle.

However, when downloading bundled Java, it's essential to ensure that you have the necessary commercial rights to download it legally.

You can manually install Java by accessing the official distribution link provided here.

https://www.java.com/en/download/manual.jsp

Conclusion

Overall, it is highly encouraged to undertake an extensive technical examination to locate where Java is installed within your enterprise environment, or as we affectionately term it, Enterprise License Position (ELP). ELP aids in discovering unauthorized Java installations for removal, distinguishing between paid, bundled, and free Java installations for optimization purposes, especially by enabling third-party movement.

Interestingly, one less anticipated benefit of ELP we've observed specifically for Java, compared to other vendors like Microsoft, IBM, or Oracle, is that Java commercials are a new concept for customers. ELP assists in familiarizing customers with the various moving pieces and outlines and quantifies all the available options. This not only educates the customer but can also be used as a persuasive tool for the internal team to present the recommended approach to the CFO or their internal management.

Navigating Java licensing to ensure compliance and capitalize on its benefits has become even more complicated with recent changes. That's why collaborating with licensing experts who are well-versed in Oracle's Java licensing policies is more critical than ever. These experts can help you unravel the complexities of Java licensing and fine-tune your usage to reduce expenses. Licensing Data Solutions (LDS) serves as your reliable ally in the optimization of Java. Our team, specializing in Oracle licensing, offers customized solutions that assess your needs, negotiate with Oracle based on value, and guarantee compliance. By utilizing LDS, you can make knowledgeable decisions that align with your business objectives, enhancing potential cost savings. To further assist you in this process, we are offering a free 60-minute strategy call with our specialists. This one-on-one consultation is the perfect opportunity to address your specific concerns and discover how LDS can best support your Java licensing needs. Don't miss out on this opportunity to maximize your benefits and ensure full compliance. Contact us at This email address is being protected from spambots. You need JavaScript enabled to view it. today to schedule your free strategy call.

Also read more on this:

Java New Licensing Changes 2023

Please check our Java Licensing Services

JAVA Licensing Review

 

Sorry, this website uses features that your browser doesn’t support. Upgrade to a newer version of Firefox, Chrome, Safari, or Edge and you’ll be all set.