2

I need a current release of Java to use for development of my app as well as deployment.

I prefer a release that is free-of-cost.

I have no special needs. I will deploy on common hardware with a few cores and 6-12 gigs of memory.

I know there are several vendors, but I don't know how to choose amongst them.

3

tl;dr

logo of the AdoptOpenJDK project

Use a build of OpenJDK provided by the AdoptOpenJDK project.

New release cadence and policies

You should know that Oracle and the Java community have changed to a new release cadence. Major production-quality releases will come on schedule every six months. Every three years a release will be designated as a Long-Term Support (LTS) version where the community will strive to back-port vital fixes and security patches, but no new features, for a number of years.

Java 11 is current

As of 2019-01, Java 11 is both the current version of Java and a designated LTS version.

All implementations I know of for the AMD/Intel 64-bit market are based on the OpenJDK project. The OpenJDK source code is open-source and available freely without cost via a Mercurial repository. Several vendors provide releases built on this codebase.

Note that using OpenJDK does not include rights to use the “Java” brand owned by Oracle; for that a vendor must (a) pass rigorous testing for compliance with Java specifications and (b) meet Oracle’s licensing terms.

Be aware that Oracle has changed their terms for use of their Oracle JDK product, no longer allowing use in production free-of-cost. Discussed here.

Also, be aware that Oracle has declared their intent to bring their own branded JDK into feature parity with OpenJDK. Oracle has even gone as far as to donate some formerly commercial parts to OpenJDK, including Flight Recorder and Mission Control.

Read Java Is Still Free

For both an overview and the gory details of the new cadence and terms of Java releases, read the very important document, Java Is Still Free. Written by key members of the Java community to clear up the recent changes.

Several releases for you

To answer your needs, I know of several sources for a release built on OpenJDK 11 available free-of-cost with deployment rights available for download to Mac, Linux, and Windows machines. (Listed in arbitrary order.)

Guide to obtaining Java 11 implementation

Here is a flowchart that might help you in choosing a source for obtaining Java. Note this chart may be incorrect or incomplete. And of course you are responsible for studying and obeying the license and terms for any software you obtain.

Flowchart guiding you in choosing a vendor for a Java 11 implementation

Motivations in choosing a vendor for Java

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.