Update: After receiving many questions in regards to the topic of this article, we developed a complimentary Java Compliance Self-Assessment Guide to help organizations determine their Java usage and better understand their potential compliance exposure. You can request the guide here.
In July 2018, Oracle released a new subscription-based pricing model for Java SE (Standard Edition) and announced that starting in January 2019, Java SE commercial users must buy a license in order to receive updates. This news caused many businesses to question their Java usage and wonder which actions they will need to take come January.
Here, we will break down this important Java SE licensing update and answer questions around what changes are being implemented, who these changes will affect, and what commercial Java SE users should do to ensure they stay compliant and maintain access to critical updates and support.
Changes to Commercial Java SE Model
Previously, there were three Java SE products known as Java SE Advanced, Java SE Advanced Desktop, and Java SE Suite. These models required commercial users to purchase upfront licenses and pay annual support. In January, those three models will officially be replaced by two new subscription-based models: Java SE Subscription and Java SE Desktop Subscription.
These changes include:
- New Java SE Subscription Licensing Structure
- New Java SE Subscription Pricing
- Changes to Public Updates
Who Will be Affected by These Changes?
All commercial Java users, not just legacy Oracle customers, will be impacted by this change. Though these two new models will be the only Java SE options for new customers in 2019 or later, customers of old Java SE models will not be forced to switch to the subscription model. But there are a few reasons they may want to consider switching, so all commercial Java SE users should be aware of how licensing and pricing differs from the old models and how public updates and support will be affected.
If you are using Java SE for non-commercial use and under a very restrictive scenario, you might have the rights to use Java SE for free. However, activating and using any ‘commercial features’ of Java requires a license, so it is worth confirming that you are not using any commercial features and are in accordance with Oracle’s Java licensing policies.
What is the New Java SE Licensing Structure?
Under this new model, customers will no longer purchase licenses upfront and pay annual support for Java SE. Instead, they will pay a monthly subscription fee under one to three-year terms for server or desktop licensing and support. If users do not renew, they will lose rights to any commercial software they downloaded during the subscription as well as their access to updates and Oracle Support.
How to Calculate Your Java SE Licensing Requirements
Under the new Java SE subscription models, customers can choose between server and desktop deployments. Server deployments will use a processor-based metric (CPU) while desktop deployments will use a Named User Plus–based metric (NUP) to calculate your Java SE license requirements.
These metrics are currently defined in the same way as standard Oracle technology products, however, there are no NUP minimums. A count of users and/or devices directly or indirectly accessing desktop computers will be required to count NUP licenses. The following graphic shows how to calculate your requirements:
How Are the New Java SE Models Priced?
The list pricing for CPU and NUP licensing was made public on Oracle’s website in July and is included in the table below. Desktop pricing starts at $2.50 per user per month but can be lower with tiered volume discounting. Processing pricing for use on servers is $25 per month or lower.
The End of Public Updates
Oracle’s Java Updates Roadmap stated that “the public availability of Java SE updates from Oracle has been extended to January 2019.” This means that commercial users on Java SE 8 will no longer receive critical updates after January which can put their business operations at risk. Businesses in this situation will either need to purchase Java SE subscription licenses or move off Java SE completely and onto an alternative platform such as Oracle OpenJDK.
Action Items for Commercial Users
If you are an existing commercial Java SE user, you should conduct an internal assessment of your current Java deployment and the commercial features you are using to:
- Ensure you are compliant and properly licensed based on the number of desktops or servers where Java is deployed.
- Determine whether switching to the new subscription model would be more cost-effective based on your current annual support fees with Java.
If you anticipate your requirements for commercial use of Java to grow, you may want to consider switching to the subscription model. If you decide to switch, you can use the processor (CPU) or NUP metric to determine whether the server or desktop-based subscription is best for your environment based on your licensing requirements.
Don’t think you’re a commercial user? Conducting an internal assessment may still be worth your time since organizations running the free version of Java SE risk being out-of-compliance which could result in significant fees if audited. To be safe, have your legal team confirm that Oracle’s Java licensing policies allow your organization to use Java SE without requiring the purchase of commercial licenses.
If you are still unsure about your current or future demand requirements for Java or whether you are out-of-compliance, a third-party evaluation like UpperEdge’s baseline assessment takes just five minutes and is worth considering.
This post was updated on October 4th, 2019 to clarify Oracle’s NUP licensing requirements.