
In September 2021, Oracle introduced a significant shift in Java licensing with the release of Java 17, marking a notable break from its previous subscription-only model.
Oracle launched a new licensing structure known as the No-Fee Terms and Conditions (NFTC), allowing businesses and developers to use Java 17 freely in both commercial and production environments—but only temporarily.
Here’s a clear overview of exactly what changed, how it impacted companies, and the practical considerations businesses needed to make.
What Exactly Changed with Oracle Java Licensing in 2021?
Before Java 17, Oracle had a strict licensing structure:
- Java 8 and Java 11 required businesses to purchase paid subscriptions for continued access to official security patches and updates.
- Commercial use without subscriptions carried audit risks and potential penalties.
With Java 17’s introduction under the NFTC license in 2021, Oracle provided a major licensing adjustment, temporarily easing these costs:
- Free Commercial Use: Companies could freely deploy Java 17 in commercial and production environments without immediate subscription fees.
- Regular Security Patches: Oracle provided standard quarterly Critical Patch Updates (CPUs) at no additional charge during the NFTC license period.
- Limited-Time Window: Crucially, the NFTC license was designed to expire after three years—specifically, in September 2024.
This Java licensing change encouraged organizations to upgrade from older Java versions (such as Java 8 or Java 11) without upfront costs or immediate financial burden.
How Did Java 17 Licensing Differ From Earlier Versions?
Before Java 17, Java licensing was subscription-based, requiring organizations to pay Oracle directly for security updates and support.
The NFTC license introduced with Java 17 changed this structure significantly:
Java Version | Licensing Structure | Commercial Use Cost | Updates & Patches |
---|---|---|---|
Java 8 | Subscription-based | Paid | A subscription required for all updates |
Java 11 | Subscription-based | Paid | Free quarterly updates until September 2024 |
Java 17 | NFTC (Temporary) | Free until Sep 2024 | Free quarterly updates until Sep 2024 |
Practical Example:
A financial services company previously using Java 11 faced annual licensing fees. Upgrading to Java 17 immediately reduced its subscription costs to zero until the NFTC license expired.
Read about the Oracle java licensing change in 2024.
Why Did Oracle Introduce the NFTC License?
Oracle introduced the NFTC licensing model strategically to:
- Accelerate the adoption of newer Java versions.
- Reduce fragmentation by encouraging companies to migrate from older versions (Java 8 and 11).
- Provide temporary financial incentives to help organizations modernize their Java deployments.
- Lay the groundwork for future revenue streams once the free period expires, anticipating that organizations will eventually need to subscribe again or continue upgrading.
What Happened After the NFTC License Expired?
The NFTC license for Java 17 was explicitly designed to expire after three years in September 2024. After this date, significant licensing changes occurred:
- Oracle stopped issuing free public updates and security patches for Java 17.
- Organizations using Java 17 commercially after September 2024 must purchase Oracle subscriptions to maintain access to critical security updates.
- Companies could upgrade to newer Java versions provided under similar temporary licensing models or move to alternative Java distributions.
Read is Java 17 free?
Strategic Options After NFTC Expiration
When the free NFTC licensing period ended in September 2024, businesses using Java 17 had several key options:
Option A: Continue Using Java 17 Without Updates
- No subscription costs.
- Increased security and compliance risks due to the absence of official Oracle patches.
- Suitable only as a short-term solution or for non-critical applications.
Option B: Purchase an Oracle Java Subscription
- Provides ongoing Oracle-issued security updates and support.
- Introduces additional licensing and operational costs.
Option C: Migrate to an Alternative Java Distribution
- Popular alternatives: OpenJDK, Amazon Corretto, Azul Zulu, or Eclipse Temurin.
- Avoid ongoing Oracle subscription fees.
- Requires compatibility testing and possibly minor adjustments.
Example:
A software company relying on Java 17 NFTC licensing until September 2024 migrated to Amazon Corretto. This allowed the company to maintain Java updates without incurring Oracle subscription costs.
Recommendations for Organizations Navigating Post-NFTC Licensing
Given the temporary nature of Oracle’s NFTC license, introduced in 2021, organizations should adopt the following strategies:
- Regular Licensing Audits:
Ensure continuous clarity on Java deployments and their licensing status to avoid compliance issues. - Early Planning for Java Version Upgrades:
Schedule upgrades proactively to avoid last-minute compliance issues or unnecessary subscription costs. - Evaluate Alternative Java Providers:
Identify suitable free alternatives like OpenJDK or Amazon Corretto well in advance to manage costs effectively. - Maintain Robust Documentation:
Accurate and detailed documentation on Java deployments helps mitigate risks during potential Oracle audits.
Frequently Asked Questions (FAQs)
Was Java 17 Free Permanently Under the NFTC License?
No. The NFTC license provided temporary free usage, expiring in September 2024, after which ongoing use required an Oracle subscription for continued updates.
Could Businesses Keep Using Java 17 After NFTC Expiration Without Paying Oracle?
Businesses could technically continue using Java 17 without paying, but Oracle ceased security updates, significantly increasing security and compliance risks.
Did NFTC Licensing Apply to Older Java Versions (e.g., Java 8 or Java 11)?
No. NFTC licensing only applied to Java 17 and subsequent versions released explicitly under NFTC terms. Older versions continued requiring subscriptions.
What’s the Best Long-Term Approach to Manage Java Licensing?
Regular upgrades within the NFTC window or switching to reliable alternative distributions like OpenJDK or Amazon Corretto help control long-term licensing costs.
Conclusion
The 2021 introduction of Java 17 under Oracle’s NFTC licensing model represented a notable shift. It temporarily eased Java licensing costs and encouraged the quicker adoption of modern Java versions.
However, businesses had to clearly understand that this arrangement was temporary and required proactive planning to manage Java licenses effectively after their expiration in September 2024.
To strategically navigate Oracle Java licensing changes, organizations must:
- Continuously monitor Java licensing changes.
- Plan upgrades and migrations in advance.
- Consider alternative Java distributions to manage software licensing costs and risks sustainably.