Oracle Java Licensing Changes – User Manual

Oracle Java Licensing

What is Oracle Java?

Oracle Java licensing has been one of the hottest IT asset management topics in last few years. This article will help you understand what you need to do. But first lets start by what is Oracle Java ? – Oracle Java is a version of the Java programming language and software platform that was made by Oracle Corporation and is kept up to date by the company. Java is a popular programming language that is used to make a wide range of apps for the web, mobile devices, and desktops.

Java is known for being a platform-independent programming language. This means that programs written in Java can run on any device with a Java Virtual Machine (JVM) installed, no matter the hardware or operating system. Oracle Java comes with the Java Development Kit (JDK), which is a set of tools that developers can use to make Java programs, and the Java Runtime Environment (JRE), which is a software platform that lets Java programs run on a device.

What is the Oracle Binary License Agreement? (The first Oracle Java Licensing Agreement)

The Oracle Binary Code License Agreement (BCLA) is a legal contract between Oracle Corporation and the people who use Oracle software products. The BCLA specifies the terms and conditions under which Oracle software products may be used, as well as the user’s and Oracle’s respective rights and duties.

This agreement applies to all Java versions and updates that were released before April 2020. Yes, that means your older Java deployments need to follow a licensing agreement.
This means that Oracle Java was never completely free. The free Java was available on OpenJDK not via Oracle website.

Explain 2019 Java Licensing changes

In 2019, Oracle made changes to its licensing model for Java Standard Edition (Java SE), the version of Java that is used for developing general-purpose applications. Before these changes, there were two main ways to license Java SE from Oracle:

An Oracle Java Development Kit (JDK) with a Binary Code License Agreement (BCLA): Users who wanted to use Oracle Java to build things could choose this option. It includes the Java Development Kit (JDK), a collection of tools for creating Java programs, and was licensed under the BCLA. It was licensed under the BCLA and came with the JDK, which is a set of tools for making Java apps.

Java licensing changes 2019
java licensing changes

Oracle Java Runtime Environment (JRE) with a Binary Code License Agreement (BCLA): Users who wanted to run Java apps on their devices could choose this option. It contained the JRE, a platform for running Java programs, and was licensed under the BCLA. It was licensed under the BCLA and came with the JRE, which is a platform for running Java programs.

What are Java Commercial Features?

Java SE commercial features are extra tools and features that come with the commercial version of Oracle Java Standard Edition (Java SE), but not with the open-source version. These features are meant to be used in business settings and can be used by people who have bought a license to use Oracle Java SE.

Here are some examples of commercial features of Java SE:

Advanced Management Console: This tool has a web-based interface for managing and monitoring Java SE deployments, including the ability to monitor Java SE applications and manage Java SE licenses.

Flight Recorder: This tool lets developers get real-time performance data from Java SE apps and look at it in detail.

Java Mission Control: This tool gives you advanced tools for analyzing and fixing Java SE applications, such as the ability to monitor and control Java SE applications in real time.

Oracle Java SE Support: Oracle helps commercial users of Java SE by giving them access to updates and bug fixes, technical support, and training materials.
Overall, Java SE commercial features are meant to give users advanced tools and support for creating and managing Java SE applications in enterprise environments.

If you have used any of those features, you need to obtain a license from Oracle, regardless if you need support or if you are following the licensing terms.

How much does it cost to use Oracle Java?

How much Oracle Java costs depends on which version you use and what kind of license you choose. Oracle has several versions one for users and one for processor (servers)

How to read Oracle Java Price List

Java SE desktop subscription is not what the name may indicate, it is not licensed per device or desktop. The license metric is Named User Plus. Named User Plus is defined as you need to license any individual who are authorized to use Java, regardless if they are using Java or not.

Java SE subscription is Oracle server licensing, for this you need to apply the processor cores and calculate using Oracle Processor Core Factor Table. You also need to take into account virtual technology used. Oracle has different rules for how to calculate licensing based upon which license model that you have. If you are using Java on VMware, it can easily be very high licensing costs.

Is Java no cost?

Java downloaded from is not free and you most likely need a license regardless of which version you have.

If you want to use the open-source version of Java, you can download it from the OpenJDK website ( and use it for free.

Even though the open-source version of Java can be used for free, it may not have all of the tools and features that come with the commercial version of Java SE. You may need to buy a license for Oracle Java SE if you want to use these features.

Does any Oracle products include a java license ?

Some Oracle products may come with a license for Oracle Java Standard Edition (Java SE), which is a version of the Java programming language and software platform made and maintained by Oracle Corporation. You can find a list of which products that have Java included in the Schedule A list.

Is Oracle doing Java audits?

Oracle is very active in doing soft audits which are led by Oracle sales teams in co-operation with Oracle audit team. You may struggle to purchase any Java licenses until you have shared all your deployment data with Oracle.

Is Java free for businesses?

It was never really free, Oracle simply didnt audit customers or had sales rep for Java until 2019. You need to

  • Review all your Java deployments, per version and distribution.
  • Match all deployments to the specific licensing agreement.
  • Apply Oracle licensing definitions and policies for virtual and cloud.

After that, you will have a Java license position and something that you can work with. Next step is to optimize your Java licensing before approaching Oracle. If you contact Oracle their sales team will simply want to audit you before you are allowed to make any purchase.

Frequently asked questions

If I have Java 8 with an older security patch do I need a license if we will not apply security updates?

Answer: Most likely, you need to review the BCLA licensing agreement and pay attention to the “general purpose” language to understand if you need a license.

Java Licensing Explained

In simple terms, there are 3 different licensing agreements for Java. Depending on which version of Java you have, you have different licensing rules and terms.

Java Licensing changes in 2019?

Oracle announced the change from BCL agreement to Java OTN in which came into effect in April 2020. Oracle made public security updates non-public with that patch.

Java Licensing Change 2021

In 2021 Oracle announced that Java 17 and onwards will be free of charge. This is under a new license agreement, called NFTC. This change does not impact older versions of Java. Oracle made another Java licensing change 2023.

What is Java free use?

The free use of Java is older versions using Java for internet browsing and or office suite productivity tool with a security patch released before April 2020. And Java 17 is also free of charge.

Java Licensing on VMware

Oracle is known for having difficult licensing rules when deploying its software on virtual environment and VMware is the most infamous example. Oracle requires you to license all physical hosts in all vCenters. Oracle on VMware licensing challenges.

If I dont need support and updates do I need a license?

Probably yes, review the applicable licensing agreement to confirm.

If you have shared computer with many users, how do I license that device?

Either you count all the individuals who have access to the shared device or you license per processor.

What is an Java ULA?

A Java ULA is a unlimited subscription agreement. For a period of for example 3 years, you may use Java unlimited on servers and users. When the time period is over, you need to uninstall all Java or renew/purchase a new agreement.

Why is Oracle not accepting our order?

Oracle sales are incentivized only on the first purchase your organization makes. Which has led to Oracle sales team refusing to take the order, unless it is big enough. As every customer is non-compliant Oracle is performing an audit if you contact them to make a purchase.

What is your recommendations we do?

Review your Java licensing independently, then optimize your licensing requirement before contacting Oracle. Only when you are 100% certain of your license position and what you need, should you engage with Oracle.

If you need help with Oracle Java Licensing, we have a service which we have delivered for more than 40 organizations. Reach out to us to discuss how we can help.