Oracle announced on Sept 14, 2021 that Java 17 and future versions of Java are now free again. In this blog, Pam Fulmer, Partner at Tactical Law Group, and David Woodard, Executive License Consultant at House of Brick, discuss the technical and legal implications of this announcement.
NFTC License Explained for Java 17 Free Usage
[David]: This announcement often gets misinterpreted as “all Java is now free again”, which is definitely not the case. You need to understand the technical and contractual aspects of this announcement to see if, and how, you may be able to use Java 17+ at no cost.
[Pam]: The announcement indicates that Java 17 and later are free under the new “Oracle No-Fee Terms and Conditions” (NFTC) license which allows for “running the Program for Your own personal use or internal business operations”.
NFTC License Explained for Java 17 Free Usage
However, the first paragraph of that agreement states:
Your use of this Program is governed by the No-Fee Terms and Conditions set forth below, unless you have received this Program (alone or as part of another Oracle product) under an Oracle license agreement (including but not limited to the Oracle Master Agreement), in which case your use of this Program is governed solely by such license agreement with Oracle.
Thus, according to its terms, the NFTC would not apply if an Oracle customer already has an Oracle Master Agreement (“OMA”) in place, which contains a Java subscription. This might lead Oracle customers who already have an OMA with a Java subscription to consider terminating the OMA if they want to use the “free” version of Java 17. That of course requires a review of the termination provision of the OMA. Paragraph 6 of the General Terms of the OMA governs termination as it pertains to Oracle programs. However, the clause does not provide for a termination for convenience, for either of the contracting parties. Instead, only a termination for cause due to a material breach that is not cured within 30-days is included in the provision. Therefore, Oracle customers who try to terminate their OMA in order to get the “free” Java 17 may well face pushback from Oracle. However, there may be potential arguments under California law that Oracle customers may be able to use should Oracle claim that the agreement cannot be terminated except for cause.
For deeper insight into current Java licensing risks, see Oracle Java Licensing Risks 2024.
Options for OMA Customers to Access Java 17 for Free
[David]: If you cannot use Java 17 for free because you have an existing OMA, you appear to have two choices: 1) continue to pay for a Java subscription and use Java 17 under that OMA, or 2) attempt to terminate your OMA, which might give rise to a dispute with Oracle. However, assuming that Oracle would not claim an Oracle customer is in breach for terminating the OMA, the Oracle customer would still need to upgrade all current paid subscription versions of Java to Java 17 to use Java 17 for free.
See our audit readiness guide to evaluate OMA termination: How to Prepare for an Oracle License Audit in 2025.
Technical & Cost Implications of Upgrading to Java 17
The older versions/updates of Java that did not require a subscription would continue to be free for the Oracle customer to use. But, versions/updates that are currently obtained under the OMA subscription would need to be upgraded to Java 17 to eliminate the subscription and to use Java for free. This could be quite an undertaking from a technical perspective, with possible code changes, and extensive regression testing. In this case “free” may have a significant cost.
A Long Term Support (LTS) version of a product has a specified period of time where it will be supported by the vendor. Thus, customers know that by using an LTS version, they will not be surprised by support ending abruptly at the vendor’s whim. Usually, the support periods for LTS versions will overlap, which gives the customer time to upgrade from one supported version to another.
Java LTS Release Cadence & NFTC Support Periods
Oracle has updated the release cadence for Long Term Support (LTS) versions of Java to every two years, and the odd numbered versions (17,19, etc) will be the LTS versions. Updates for a given LTS release will be available until one year after the next LTS release date thus giving customers one year of overlap to get upgraded to the next LTS version. Oracle will continue updating some older LTS releases, but you will need to get a subscription to use those updates. The even numbered versions will only be supported for a short time, and often are used by customers to try out new features in non-production environments
NFTC Updates & Oracle Java FAQ Revisions
[Pam]: Oracle updated the Java Frequently Asked Questions (“FAQ”) to state:
Oracle will use the NFTC for JDK 17 and later releases. LTS releases, such as JDK 17, will receive updates under this license for one year after the release of the subsequent LTS. After the free use license period, Oracle intends to use the OTN License, the same currently used for Java 8 and 11 LTS releases, for subsequent updates.
Subscription Requirements for Java SE Production Use
So, if you are still running an older version of Java 17, for example, that falls under the Oracle Technology Network License Agreement for Oracle Java SE, it does not allow for production use of Java. If you wanted to keep using that older version, or want to update it if Oracle releases new updates for that version, you will need a subscription.
(This appears to mean, per the NFTC first paragraph, that Oracle customers would need a subscription for all Java versions, even newer versions like 19, 20, 21, etc., which would normally be free)
Assess Your Java Estate for NFTC-Free Eligibility
[David]: So, if you find yourself unable to upgrade off of Java 17 (or later as newer LTS’s roll out), then you are looking at now having to get a Java subscription for your entire Java estate once again. So, the decision to move into the free Java NFTC ecosystem should include a realistic assessment of your team’s capabilities to get upgraded to the newer Java version in a timely manner and stay updated.
Conclusion: Evaluating the True Cost of “Free” Java 17
Conclusion: Unless Oracle comes out and states that you can have free Java 17+ and older subscriptions under an OMA and the new NFTC in use at the same time, the first paragraph of the brand new NFTC would seems to indicate otherwise.
Stay audit-ready with best practices: Audit Your Oracle Feature Usage Before Oracle Can.
Need help navigating Java 17 licensing?
House of Brick Services can help with:
- Annual License Assessments (Oracle, Java, VMware)
- Entitlement analysis (OLSA, OMA, ULA, ELA, etc.)
- Architecture optimization for cost reduction
- ULA exit planning and future-state modeling
- Weekly and Monthly Usage Reviews
- Weekly Oracle usage and compliance analysis
- Monthly Java usage elimination tracking
- Risk and cost summaries delivered by licensed experts
- Business change planning (migrations, M&A, renewals)
- Unlimited Audit Defense & Renewal Support (audit defense for Oracle, Java, VMware; discovery script strategy and data review; drafting of communications to vendors; pushback on inaccurate findings; renewal strategy and negotiation guidance)
Frequently Asked Questions
It permits running Java 17+ at no cost for personal use or internal business operations under the Oracle No-Fee Terms and Conditions.
The NFTC states that if you received Java under an Oracle license agreement (like an OMA), your use is governed solely by that agreement, not the NFTC.
Continue your Java subscription under the OMA or terminate the OMA (which may require legal review) to fall under the NFTC’s free terms.
Upgrading may entail code changes, extensive regression testing, and operational effort—making “free” Java 17 potentially expensive.
LTS versions (odd-numbered) are supported under NFTC for one year after the next LTS release—after which a subscription is required for further updates.