On April 16, 2019, Oracle changed the licensing agreement for Java SE
from: Oracle Binary Code License Agreement for Java SE
to: Oracle Technology Network License Agreement for Oracle Java SE
Oracle is active at requiring organizations to correctly license their software.
If you want to continue to use Oracle Java, here are your options:
- If you are an organization, to continue at no cost then you need to switch to Oracle’s OpenJDK release.
- If you are a personal user or for development use, you can to continue to use the Oracle Java SE release.
- If you are an organization (or using it as part of your work for an organization) and want to continue to use Oracle Java SE, then you will be required to get a Java SE Subscription (i.e. pay money to use it).
I believe that most people using Java for DAB fall into the last category.
So what should you do? Based on the question/answers from the Oracle Java SE Licensing FAQ, I believe these are the options:
- Use an older version of Oracle Java SE released under Oracle Binary Code License. The last version was Java SE Development Kit 8u202.
- Use a version of OpenJDK that works with DAB. It needs to include JavaFX. Oracle’s OpenJDK does not work. Amazon Corretto does work with DAB 5.4 with a minor change (you need to set JDK_HOME env variable to the JAVA_HOME).
For the next version of DAB, we will be fully supporting Corretto and changing the documentation to prefer it. We will likely include information about the licensing change and point people to the last version of Oracle Java SE if they choose to use it (or they have other software that doesn’t work with Corretto and they need 1 JDK installation).
P.S. Here are some relevant questions/answers from the FAQ.
What about Java SE 8?
Oracle Java SE8 updates, which includes the Oracle JRE with Java Web Start, continues to be free for personal use, development, testing, prototyping, demonstrating and some other important uses explained in this FAQ under the OTN License Agreement for Java SE. Personal users can continue downloading the Oracle Java SE 8 JRE at java.com.
I don’t believe that use of it with DAB counts. I think Oracle would consider that commercial use (even though you are not charging for the output … you are doing the work as part of your work for an organization which makes it commercial).
What happens to the Oracle Java SE releases I downloaded under previous licenses, such as the BCL?
You may continue to use releases you have downloaded under the terms of the license under which you downloaded them. Legacy releases are still available in the Java Archives. Note that older versions of the JRE and JDK are provided to help developers debug issues in older systems. They are not updated with the latest security patches and are not recommended for use in production. Oracle strongly recommends that you remain on an up-to-date version of Java with the latest performance, stability and security updates.
If you are going to continue to use Java 8 SE, then the latest version you can use without having to likely pay licensing fees is Java SE Development Kit 8u202.