Which Versions of Java Are Free?
Executive Summary:
Oracleโs recent Java licensing changes have left many organizations unsure which Java versions remain free to use in business environments.
The Java platform is open source and free, but Oracleโs official Java distributions include licensing restrictions for business use. This article explains which Java versions are free for commercial use and under what conditions, helping enterprises avoid surprise costs and compliance risks.
The Changing Landscape of Java Licensing
Insight: For years, Java was freely available (even for business use) under Sun/Oracleโs Binary Code License. That changed in 2019 when Oracle introduced new license terms that require paid subscriptions for certain Java releases โ effectively a โJava taxโ on enterprises.
Example: Many companies were surprised in 2019 that continuing to use Oracle Java 8 beyond update 8u202 suddenly required a paid subscription. They had assumed Java would always be free in production, so this announcement created immediate compliance and budget concerns.
Takeaway: The era of assuming โJava is freeโ in enterprise environments is over. Now, whenever Oracle releases a Java version, you must verify its license before deploying it for business. Staying vigilant about Oracleโs Java licensing policies is essential to prevent compliance problems and unexpected costs.
Pro Tip: Assign a team to monitor Oracleโs Java licensing updates and keep a full inventory of all Java versions in your environment. This way, youโll never be caught off-guard by a licensing change or an audit.
Which Versions of Java Are Free (and Which Are Not)
All Java versions have a free implementation available (thanks to OpenJDK and other providers), but whether Oracleโs JDK for a given version is free depends on the version and licensing.
The table below shows the status of Oracle Java versions for commercial use:
| Java Version | Oracleโs JDK Free? | Details |
|---|---|---|
| Java 7 and earlier | Yes (legacy license) | Free to use under the old license. No free updates now (end-of-life). |
| Java 8 (LTS) | Partially | Free for updates up to 8u202. Updates 8u211 and later require a paid subscription. (Oracle JDK 8 is still free for personal/dev use.) |
| Java 11 (LTS) | No | Not free for production under Oracleโs OTN license โ requires a subscription. (Use an OpenJDK 11 build to avoid fees.) |
| Java 17 (LTS) | Temporarily | Free under Oracleโs NFTC license until about Sept 2024. After that, updates require a paid subscription. |
| Java 21 (LTS) | Temporarily | Free under NFTC until about Sept 2026. Likely will require payment for updates beyond that point. |
| All other non-LTS releases | No | Oracle JDK needed a subscription for these short-term versions. Short support cycles; generally avoided in production. |
Takeaway: Any Java version can be used for free if you choose a non-Oracle distribution. Oracleโs own JDK is free only in specific cases (older versions under the old license, or during a limited no-fee window for certain LTS releases).
To avoid costs, either stick to Oracleโs LTS versions during their defined free period (and be ready to upgrade when that ends), or run your Java on one of the many free OpenJDK-based distributions available.
Pro Tip: Replace any Oracle JDK in your environment that isnโt free to use, or license it if you canโt replace it. Donโt ignore Oracle JDK installations that fall outside the free-use criteriaโremediate them before they become a compliance issue.
Free Java Alternatives to Oracleโs JDK
Oracle isnโt the only source for Java. Several free JDK distributions are available โ for example, Oracle OpenJDK, Eclipse Temurin, Amazon Corretto, Azul Zulu, and others (like IBM and Microsoft builds) โ which let you use Java in production without paying Oracle.
These distributions are based on the same OpenJDK code and are functionally equivalent to Oracleโs JDK, just under open-source licenses and supported by different organizations.
| Java Distribution | Provider | Support Highlights |
|---|---|---|
| Oracle OpenJDK | Oracle | Free, open-source build. Updates stop once the next Java version is released (limited support window). |
| Eclipse Temurin | Eclipse Foundation | Free and open-source. Community provides long-term updates for LTS versions (through the Adoptium project). |
| Amazon Corretto | Amazon Web Services | Free. Amazon offers multi-year support for LTS releases (used internally at AWS and kept updated for public use). |
| Azul Zulu (Community) | Azul Systems | Free. Offers builds for many Java versions (including older ones). Community updates for extended periods; paid support available for longer needs. |
Takeaway: Free OpenJDK-based distributions are virtually identical to Oracle JDK in features. By standardizing on one of these (and planning how youโll get updates), you eliminate Oracle Java license fees.
Many enterprises use Temurin, Corretto, Zulu, or similar as drop-in replacements for Oracle JDK with great success. Just remember that โfreeโ means you are responsible for applying updatesโeither in-house or via a support vendorโsince you wonโt be getting patches from Oracle.
Pro Tip: Standardize on a chosen free JDK (e.g., Temurin or Corretto) company-wide to eliminate Oracle Java licensing risk. Making one of these your organizational standard ensures no one accidentally downloads Oracleโs JDK and introduces a license liability.
Cost and Compliance Risks for Enterprises
Using Oracleโs Java without a proper license poses compliance and financial risks. Oracle now audits companies for Java usage, and its per-employee licensing model means even a small unauthorized Java deployment can result in a huge expense (since Oracle might count every employee in your organization when calculating fees).
Bottom line: eliminate or strictly control any use of Oracleโs JDK in your environment. If you do use Oracle Java, make sure itโs either within a free-use allowance or that youโve paid for the necessary subscription.
In most cases, itโs safer and more cost-effective to use free Java alternatives than to risk an audit due to unlicensed Oracle JDK installations.
| Risk Scenario | Why It Matters |
|---|---|
| Oracle Java on many systems | Under Oracleโs per-employee model, widespread Oracle JDK use could force you to license your entire workforce โ a massive expense. |
| Using Java past free updates | Running Oracle Java beyond its last free patch (e.g., Oracle JDK 8u211+, 11.0.x+) counts as unlicensed usage, risking back-dated fees if audited. |
| Unapproved Oracle JDK installs | โRogueโ installations via Oracleโs download or auto-update can slip in unnoticed. These can put the whole company out of compliance until found. |
| Java embedded in third-party apps | Some software vendors bundle Oracleโs Java with their applications. If that usage isnโt covered by the vendorโs license, youโre responsible for it โ a hidden trap. |
| Out-of-support Java versions | Old Java versions (6, 7, 8) in production with no security updates can lead to vulnerabilities or urgent upgrade costs, and theyโll be red flags in an audit. |
Pro Tip: Regularly audit your systems for any Oracle JDK installations and remove or replace them before an Oracle auditor ever comes knocking. Being proactive puts you in control and drastically reduces your exposure.
Recommendations
To manage Java effectively and avoid licensing pitfalls, follow these practices:
- Standardize on free Java: Choose a go-to open-source Java distribution (or two) and use it everywhere you can. This prevents any accidental use of Oracleโs JDK in your environment.
- Enforce policies: Establish an internal policy that requires Oracle Java to be installed only with approval. Block Oracleโs Java download site on your network if possible, and provide developers with approved Java installers internally. Make sure all team members are aware of this policy.
- Monitor Oracle & plan upgrades: Assign someone to watch Oracleโs Java licensing announcements, and plan your Java upgrades accordingly. For example, if youโre running Oracle Java LTS during its no-fee period, prepare to move to the next LTS release within that free window so you donโt have to pay once the free period expires.
- Self-audit regularly: Periodically scan your systems for Oracle JDK. If you find any, either remove them or get them properly licensed โ but do it on your terms, not under audit pressure.
Pro Tip: If you absolutely must use Oracleโs Java (for instance, for a specific vendor application), try to negotiate it as part of a larger deal with Oracle, or at least limit its use to as few systems as possible. Some leverage or containment can prevent Java from inflating your costs.
Checklist: 5 Actions to Take
- Identify all Java installations: Scan all servers, PCs, VMs, and containers, and inventory every Java instance (note the version and vendor for each).
- Verify licensing for each: Flag any Java installations that are Oracleโs JDK and not clearly covered by a free-use allowance (for example, Oracle Java versions beyond their free update or usage scope).
- Replace or license: Uninstall or swap out any non-compliant Oracle JDK with a free OpenJDK equivalent. If you cannot replace it immediately, purchase the required Oracle Java subscription to cover it (as a temporary measure while you plan to migrate off it).
- Prevent reintroductions: Block Oracle Java downloads in your environment and provide only approved free Java builds internally. This ensures new projects or updates donโt inadvertently bring Oracleโs JDK back into use.
- Monitor and update: Track when each Java versionโs free period or support lifecycle ends, and upgrade before then. Be proactive about applying updates (from your chosen OpenJDK provider or support vendor) to keep your Java environment secure and compliant.
By following these steps, youโll stay in control of your organizationโs Java usage, steer clear of Oracle licensing troubles, and keep Java-related costs to a minimum.
FAQ
Q: Is Java still free for commercial use?
A: Java (OpenJDK) is free and open-source. However, Oracleโs official Java (Oracle JDK) is generally no longerย free for commercial use. In practice, you can use Java without paying Oracle as long as you avoid Oracleโs JDK or stick to the narrow scenarios where Oracle permits free use.
Q: Can we use Java 8 or Java 11 in production without paying Oracle?
A: Yes โ if you use the right distribution. For Java 8, you can run it for free in production by using Oracleโs Java 8 up to update 202, or by using a free OpenJDK 8 build for later updates. For Java 11, do not use Oracleโs JDK 11 in production (since it always requires a subscription); instead, deploy a free OpenJDK 11 distribution (such as Eclipse Temurin or Amazon Corretto) to run your Java 11 applications with no fees.
Read about our Java Advisory Services.