In September of 2021 Oracle released their distribution of Java 17 under the No Fee Terms and Conditions (NFTC) license. This was most likely a response to the severe backlash from their April 2019 decision to start charging for Java licenses. Under this NFTC license Oracle Java was seemingly magically free again, although there were many Terms and Conditions that still needed to be adhered to. One of the conditions of note was that one year after the release of the next (Java 21 in this case) long-term support (LTS) version the license for Java 17 would revert back to the Java Oracle Technology Network or Java SE Subscription license and no longer be free.
As of September 2024, it has been one year since the release of Java 21 LTS, therefore future Java 17 releases are no longer under the NFTC license. One key takeaway for readers of this blog is that past versions of Java 17 are still under the NFTC license. It is the new releases of Java17, post September 2024, that are no longer under NFTC. Recently we have heard from several clients that they are getting notices from non-Oracle vendors that the sky is falling and that they need to license Java 17 immediately. This is quite simply not true.
Oracle Java 17 releases from 17.0.0 through and including 17.0.12 are released under the NFTC license. This is what Oracle intended all along with the NFTC license and as much as I hate linking to an Oracle site, this is exactly what Oracle states. Anyone stating that these “old” versions of Java 17 that are under NFTC are no longer under NFTC are simply wrong.
There are certain circumstances where the 17.0.12 and older releases do need to be under the Java SE Subscription license. Those issues are discussed here. Those issues are more special cases and there isn’t an imminent emergency need to seek commercial licenses for Oracle Java versions 17.0.0 through 17.0.12. Any organization relying on the free NFTC license should carefully consider their upgrade plans and security posture though, because staying on the free versions means no longer receiving the security fixes of newer Java releases. House of Brick has guided numerous clients in developing their Java strategies, so don’t hesitate to contact us with any questions or for further assistance.