Java
Understand Java License Changes
Everything you want to know about Oracle’s Java License Changes and how it affects you
Understand Java License Changes
Everything you want to know about Oracle’s Java License Changes and how it affects you
The question in the minds of many people is
The Change
Oracle made an announcement d in September 2017 that practically meant:
What does this mean for customers?
Read all about the technical components, different distributions,
how to review your usage & other aspects of Java licensing,
Java is:
There are many versions of the platform – the original from Sun (now Oracle) released in September 1995; from IBM, Amazon, Azul, Redhat, Bellsoft, Microsoft etc)
The Sun/Oracle version is the most popular as it was the original release.
The different components of Java are given below. We have also tried to clear confusion on duplicity in the naming of the components (eg: Java SE & JDK)
Oracle JDK (Java SE) | Azul Zulu |
Oracle OpenJDK | IBM Eclipse OpenJ9 |
AdoptOpenJDK | Red Hat OpenJDK |
Amazon Coretto | SapMachine |
Liberica | Sun HotSpot |
Given below is a very brief and quick summary of the different licenses from Oracle for Java, the usage rights and implications for customers. Please note this is not legal advise & you should proceed with caution after taking legal opinion.
License Name | License Rights Summary & Implications |
---|---|
Binary Code License (BCL) |
|
OTN Agreement for Java | This is the current non-commercial license for Java: Oracle Technology Network License Agreement for Oracle Java SE
|
GPL2 with classpath exception | Oracle provides the Oracle OpenJDK under GNU General Public License, version 2, with the Classpath Exception. This license allows:
|
There is confusion with different terminologies and jargon used with reference to Java in the IT industry.
Some of them are clarified below.
Program/ Terminology | What is it? | Java Commercial License Needed? |
---|---|---|
Javascript | It is a front-end development coding language. It’s not part of the Java platform | No |
JavaBean | JavaBeans are classes that encapsulate many objects into a single object (the bean) | Yes |
Applet | An applet is a Java program that can be embedded into a web page. Oracle deprecated this in Java9. Most browsers do not support applets currently. Chrome discontinued in 2015, Mozilla dropped it in 2018, Microsoft Edge does not support it. It is only available on MS Internet Explorer | No |
Java 2 Platform | JDK was first generation platform. Java 2 Platform is second generation. | Yes |
JInitiator | Oracle’s JRE on client to run Forms in Internet Explorer | No |
Identify where Java is installed in your environment. Conduct a discovery across all the servers and desktops. Prepare an inventory of the Java version, executable path and the application for which it is used.
Normalize the Java versions into the different agreements from Oracle and other publishers. Classify the Java installed into BCL, OTN, Oracle Commercial, Azul, IBM, Redhat, AdoptOpenJDK, Amazon Coretto etc.
Assess the license requirement for each application based on publisher partnership with Oracle & Oracle’s approved product list. Also check the usage of commercial features of Java being used (especially) in the BCL versions.
Conduct an optimization exercise for currently installed Java deployments. Formulate an enterprise-wide strategy for Java deployments from Oracle & other publishers based on security, cost, and flexibility parameters.
Yes and No is the correct answer. If you use the latest versions of Oracle’s Java SE you need to have a license. This license can be either purchased separately for Java SE or as an ‘included product’ in certain Oracle products.
There are free distributions of Java also available. One example is Oracle’s Open JDK. Another is Azul’s Zulu
Binary Code License (BCL) for Oracle JDK
This was the old agreement from Oracle for Java. Under this license Java could be used without paying money to Oracle except for certain commercial features.
OTN Agreement for Java for Oracle JDK
This is the new license from Oracle for Java. Under this license, Java has to be licensed commercially.
GPL2 for Oracle OpenJDK
This is the license under which Oracle releases the open-source version of the JDK. It is known as Oracle OpenJDK.
Read more about the Java License Analyzer here
You might want to read more about our CEO Sheshagiri Anegondi (Sheshu). He is amongst the foremost Oracle License Experts globally.