There has been a lot of talks recently about Java 11 and it’s changing in Licensing. Then add on top of that the fact that Java EE transitioned into Jakarta EE and Android’s growing support for Kotlin suggests even more large changes are on the way.
Java 9 which got released on 21st September 2017. Java 10 release on 20th March 2018 shocked the industry with only a 6-month gap between releases as compared to its years between releases. Java 11 has now been released on 25th September 2018. Looks like Oracle is keeping up with its 6-month release windows but why the sudden change?
Let’s make some definitions before we continue.
Java – When most people talk about Java they refer to Oracle Java. Oracle bought over Sun Microsystems and continued to develop the Java language
OpenJDK – This is the open source version of Java where people can contribute to the project or fork the project creating their own variations. The difference for OpenJDK is that it may not have the same level of support that Oracle may provide for
Java EE – Java EE or Java Enterprise Edition is a framework built on top of Java which provides extra and functionality for primarily Network-based solutions such as Web servers and backends. Some might refer to J2EE, this is the predecessor to Java EE.
The first major news that has happened recently is that Oracle has dropped support for Java EE and licensed it out to the Eclipse Foundation. The Eclipse Foundation is continuing on the project under Jakarta EE. This may seem like a bit of a weird move especially since Oracle has to make
Next is Androids growing support for Kotlin. Kotlin was officially included in Android Studio since September 2017. At first some might feel likes akin to Apple supporting both Objective-c and Swift for iOS development but in fact, there is another reason. If Android does start to move away from Java I think it’ll take quite
Java 11 has just been released and you the biggest change most people are focusing on is the change in licensing. To use Java 11 in a production environment a license will need to be bought under a monthly subscription per server per core. You can see this on their download page and under their new terms and conditions.
What Lies Ahead?
Does this all mean that the future of Java looks bleak? No, probably not. But definitely
For Core Java users there is always OpenJDK which will remain free to use. So instead of using Java JDK use OpenJDK.
For Android users its uncertain what Google may use in the future, they could move towards OpenJDK or drop support for Java completely. Either way, it may be work considering making the move to Kotlin regardless. More and more companies are making the move to Kotlin as a long-term solution.
For Java EE users I think it’ll be a business decision if the company is willing to pay the extra licensing fees and to continue with Jakarta EE.