Java 11 Has Arrived

Java 11 has arrived, right on schedule. This is a long-term release, with welcome improvements over Java 8. When installing it, you have—for the first time—the choice between the Oracle license and an open source license for the exact same feature set. And you really want to carefully look into this if you use the JDK in production.

hwy11

The JDK 11 release schedule said: “2018/09/25 General Availability”. And sure enough, when I checked today, there it was:

Java SE 11 (LTS)
Java SE 11 is the first Long Term Support feature release for the Java SE Platform

It's a big deal, I think. I don't think that the six month short-term releases have much appeal other than to Java enthusiasts such as myself. And even I don't use them for anything other than checking out the new and experimental features.

I still need to run software that requires pre-modular JDK 8, so I don't expect to purge that from my laptop anytime soon. But I expect that JDK 11 will become the new baseline until the next LTS release becomes available. If Oracle sticks to the plan of a three-year LTS schedule, that will be JDK 17 in the fall of 2021.

If you have ignored Java 9 and 10, this is a good time to check out Java 11. You will probably like:

In the past, most people downloaded the Java development kit from Oracle (https://www.oracle.com/technetwork/java/javase/downloads/index.html). You can still do that, of course. But if you prefer not to have to accept the Oracle license, you can get OpenJDK binaries from http://jdk.java.net/11/.

The OpenJDK releases used to be quite different from the commercial releases, but over the years, Oracle chipped away at those differences and the two are now for all practical purposes identical.

However, only the Oracle releases come with installers for Mac and Windows (which mercifully no longer install unwanted toolbars) or packages for Linux. With OpenJDK, you simply uncompress the archive to a location of your choice.

As a developer, teacher, or student, the Oracle JDK is fine. But don't use the Oracle JDK in production unless you and your lawyers understand the ramifications, which can come some with costs that you may or may not find reasonable. I am certainly not qualified to have any opinion on this matter, but that doesn't stop me from giving one: Go with OpenJDK unless you have a specific business reason to use the Oracle JDK.

The only catch is that the OpenJDK builds will go away after six months, even for the long term Java 11. That's annoying. And quite possibly on purpose.

We'll have to see how that shakes out. Azul, Red Hat, and IBM have pledged independent support for Java 11. At one point in the hopefully near future, the https://adoptopenjdk.net site should offer JDK 11 downloads. That may become your best bet if you need to publish download links for courses, tutorials, and so on.

Finally, if you want to download the API docs, so that you can code on a desert island without wifi, you still need to go to the Oracle site. It's a separate download—look for “Additional Resources” and “Java SE 11 Documentation”.

Comments powered by Talkyard.