When looking at alternatives to use Java for free, let’s take Oracle JDK version 11 and onward out of the equation. As explained in one of our previous articles, as of version 11 you can use Java Standard Edition for free only for the purpose of developing, testing, prototyping, and demonstrating your application – this means NO production and none of the other situations that are restricted by the OTN license.
So, to get back to our question, if you need Java from Oracle for running production applications, it means the free alternative that you’re left with is to use Open JDK. Furthermore, to ensure compliance with all the security regulations you may be required to use the latest release with the latest security patches.
But is it feasible for you to always use the latest release? One of the difficulties of keeping up to speed with the new release cadence of Java is related to the compatibility of the applications for which Java is required. Let’s understand how that works and what are the operational costs of attempting to keep the pace.
Assume that you use an application published by a third-party company and written for Java 8. This automatically means the application is implemented with the technical features and functionalities included in Java 8. Now, let’s assume Oracle releases a new version of Java and stops providing free patches and updates for Java 8. To ensure compliance from a security perspective you would have to migrate to the new Java version. But is your third-party application compatible with it? Chances are rather big that it’s not. The third-party publisher needs some time to react to the new Java release. Therefore, it will take some time until the third-party application is fully compatible with the new version of Java and furthermore, it might also take some time to simply understand if and where there are any incompatibilities. To make this scenario more concrete, consider that instead of the third-party application we’re talking about one that is developed in house. How long would it take your developers to redesign it? This topic has been addressed extensively by Oracle in this article. Their answers prove that this is a real concern of the user community.