I
Oracle has significantly changed the Java licensing model over the years. Here’s a summary of the key changes:
2019 Changes:
Oracle announced that updates to Oracle Java JDK 8 would require a subscription from patch 211 onwards.
They introduced a new Java licensing agreement, the Java OTN SE, which forbids all commercial usage.
The old BCLA agreement was already making most companies non-compliant.
These changes were announced in 2019 but took effect in April 2020.
2021 Changes:
Oracle introduced another licensing agreement, the NFTC (Oracle No-Fee Terms and Conditions).
They announced that Java is free for commercial usage from Oracle JDK 17 onwards.
However, if you don’t update to Java 17, you may need a Java subscription to apply security updates for older versions (not officially confirmed).
The NFTC agreement doesn’t affect you if you run older Java versions (1-16).
2023 Changes:
In January 2023, Oracle significantly changed its pricing model for Java SE subscriptions.
They replaced the Named User Plus and Processor licenses with a new “Employee for Java SE Universal Subscription” model.
The new pricing is based on the number of employees, with different price tiers for different employee ranges.
This change affects the license metric but not the terms of usage. Existing licensing agreements (BCL, OTN, NFTC) remain valid.
https://redresscompliance.com/decoding-oracle-java-licensing-java-licensing-changes-2023/
II
Oracle made certain versions of Java free again with some conditions:
- On September 14, 2021, Oracle announced that Java 17 and future Java versions are now available for free once more.
- However, you may still need a license for older Java versions (Java 8-16).
- The free use of Java 17 and later versions is subject to the Oracle No-Fee Terms and Conditions (NFTC) license.
- If you need to apply a security patch to Java 17 or later after September 2024, a paid subscription will be required to access those updates.
- You cannot apply security patches released after September 2024 or upgrade to a newer free Java version to avoid needing a subscription.
In summary, while Oracle has made Java 17 and later versions again available for free use, this comes with some caveats regarding licensing for older versions and access to long-term security patches.
III
Is Oracle Java 17 Free?
Java 17 is indeed free to use, with specific conditions around security patches.
Usage Without Licensing: You can use Java 17 without a license until September 2024 without any restrictions.
Security Patch Considerations: The licensing requirement applies if you apply a security patch released after September 2024.
Options to Avoid Licensing:
Option A: Choose not to apply any security patch released post-September 2024.
Option B: Upgrade to a newer version of Java to continue receiving security updates without licensing.