The Return of the Proprietary JDK

SDKMAN!
SDKMAN!
Jul 20, 2017 · 3 min read

A few weeks ago we announced that we would be removing all Proprietary JDKs from SDKMAN until further notice. The reason why we were forced to do so was due to restrictions imposed on the Oracle website for downloading historic JDK versions.

As a result we were (finally) pushed over the edge to begin serving OpenJDK versions of Java on SDKMAN. This was largely welcomed by the community, although some asked us to bring back the proprietary Oracle binaries. Some people actually require, or even prefer these above the open source alternatives.

Since these proprietary binaries are generally provided in unconventional package formats, some work needed to be done on the SDKMAN backend to accommodate both OpenJDK and Oracle JDK simultaneously. The great news is that this work is now complete and we have rolled out these binaries for use by those who are interested.

Even though we have brought back the proprietary binaries, we have done so with some limitations:

OpenJDK still the Default

As we have taken a bold step to providing OpenJDK as our default Java package, we will be keeping this as our default going forward. This means that we see the Oracle JDK strictly as optional extra, and serves to supplement what we currently provide with OpenJDK. We encourage the majority of users to use and install the OpenJDK rather than the proprietary counterpart.

No Guarantees

As a direct result of this, it also holds true that the Oracle JDKs provided will come with no guarantees. Due to the odd packaging and brittle processes that is needed to install these binaries on your machine, many things can go wrong. We also don’t guarantee that the Oracle binaries will always be the very latest in the series. Expect a lag in seeing the latest version after new releases on the Oracle website.

No Historic Versions maintained

Furthermore, we will also not be providing historic versions of the Oracle JDK. We will provide the latest stable version (currently pegged at 8u131) and periodically release newer versions when they become available. The newer versions will replace the previous ones and we will not be accumulating these.

Limited support for Windows

Since the OpenJDK for Windows is provided in a sensible package format (zip), we no longer have problems with installation on shells other than Cygwin. In the past we were experiencing many issues with the Oracle MSI Windows installer in Git Bash and other minimalist shells. This was due to the administrative privileges required for installing such packages. Since this problem is now addressed through OpenJDK’s sensible packaging, we will only be making the Oracle JDK available for Cygwin on Windows going forward.

Linux 32-bit is back

No 32-bit packages were available on SDKMAN after removing the Oracle JDKs. This was due to no 32-bit OpenJDK binaries being available. One advantage of bringing back the Oracle packages is that we can once again provide support for 32-bit JDK.

In Summary

Bringing back the Proprietary Oracle JDK gives more choice to our users. Although Oracle JDK will never again be the default version of Java on SDKMAN, we are providing it for those who really need it. With no guarantees about updates, Windows shell compatibility or historic versions, we will only be providing the bare essentials of Oracle JDK on SDKMAN.

)

SDKMAN!

Written by

SDKMAN!

The Software Development Kit Manager

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade