A story about the JDK in the Java 11 era

Introduction

This is the part related to Java (JDK) of Web service Java 11 support. Many people have written this article, but this article is just a reminder when I choose OpenJDK 11.

JDK 11 choices

At least for now, you have the following JDK options:

OracleJDK The official JDK of Oracle, which was not mentioned. In terms of safety and security, it is one step ahead of other JDKs. Java 11 or later can be obtained by contracting with Oracle. (Download available for development) You can also get indefinite eternal support by contracting & paying.

Oracle Java SE Support Roadmap ](https://www.oracle.com/technetwork/jp/java/eol-135779-ja.html)

In the project I am in, I decided that it would be difficult to keep paying a relatively high price (additional premium price after 3 years support), so I was NG.

OpenJDK A JDK that is being developed by the Java development community, including Oracle. It seems to be the basis for other JDK implementations. The bottleneck is that the support life cycle is as short as 6 months (until the next JDK release).

In my project, I chose OpenJDK because I could pay the update cost because I was relieved that it was close to the official JDK of Oracle.

Redhat OpenJDK JDK maintained by Red Hat. It seems that long-term support will be provided on RedHat Linux. Since it is necessary to purchase a license for RedHat Linux, the introduction hurdle is close to Oracle JDK and it is difficult because of OS restrictions.

In my project, I didn't use RedHat Linux, so I didn't install it.

AdoptOpenJDK A JDK that is being developed by several companies and communities, including IBM. The current code base seems to be provided as a build with OpenJDK. I am wondering how it will be operated after the actual support life cycle of the corresponding version ends.

In the project I am in, I was worried about the results and decided not to introduce it.

ZuleOpenJDK JDK maintained by Azure Systems. It seems that free long-term support will be provided. It became a hot topic that support was provided by Microsoft's Azure. I am wondering how it will be operated after the actual support life cycle of the corresponding version ends.

In the project I'm in, I wasn't using Azure and, like AdoptOpenJDK, I was worried about the performance, so I didn't introduce it.

Amazon Corretto Amazon (Amazon Web Services) JDK to maintain. It seems that free long-term support will be provided. It was a big topic because of the comment from Java developer James Gosling who is currently on Amazon Web Services and the fact that it is already used as a JDK on Amazon Web Services.

In the project I am in, the introduction was NG because it is the current preview version. I have a feeling that if it becomes the official version, it will be considered for introduction in the future.

Impressions

In the project I am in, the decision-maker is relatively stable-minded, so I chose OpenJDK because I can pay the update cost, but it started to be talked about around the spring of 2018. There are more options than around the time.

Depending on the conditions, there are many things that can be used while receiving free long-term support like the past JDK, and I think that many people are worried.

It seems that the topic will come up again around the beginning of 2019 when Java 8 support ends, or around March 2019 when OpenJDK 11 support ends, but I hope it will be helpful for everyone's choice.

Recommended Posts

A story about the JDK in the Java 11 era
[Creating] A memorandum about coding in Java
I tried the new era in Java
About Records preview added in Java JDK 14
The story of writing Java in Emacs
A story about hitting the League Of Legends API with JAVA
The story of low-level string comparison in Java
About the confusion seen in startup Java servers
The story of making ordinary Othello in Java
A story about Java 11 support for Web services
The story of forgetting to close a file in Java and failing
A story about a Spring Boot project written in Java that supports Kotlin
The story of learning Java in the first programming
Measure the size of a folder in Java
A story about making a Builder that inherits the Builder
A story about trying to operate JAVA File
A story about a super beginner participating in the AtCoder contest for the first time (AtCoder Beginner Contest 140)
A note for Initializing Fields in the Java tutorial
A story about introducing Evolutions into the Play Framework
A story about developing ROS called rosjava with java
Think about the JAVA = JAVAscript problem (needed in the future)
The story that .java is also built in Unity 2018
A note about Java GC
A note about the scope
Find a subset in Java
About abstract classes in java
Learn about the spec while shortening FizzBuzz written in Java
A quick explanation of the five types of static in Java
Let's make a calculator application in Java ~ Display the application window
A story about BeanNotOfRequiredTypeException occurring after applying AOP in Spring
Create a method to return the tax rate in Java
[Java] A story about IntelliJ IDEA teaching Map's putIfAbsent method
Think about the differences between functions and methods (in Java)
About the behavior when doing a file map with java
How to switch Java in the OpenJDK era on Mac
A story about misunderstanding how to use java scanner (memo)
Considering the adoption of Java language in the Reiwa era ~ How to choose a safe SDK
Access the network interface in Java
Guess the character code in Java
3 Implement a simple interpreter in Java
[Java version] The story of serialization
Apache Camel in the cloud-native era
I created a PDF in Java.
About the symbol <%%> in Rails erb
Specify the java location in eclipse.ini
A really scary (Java anti-pattern) story
Unzip the zip file in Java
About the current development environment (Java 8)
A simple sample callback in Java
A murmur about the utility class
Parsing the COTOHA API in Java
A story that solved the problem that the Java (jdk) version was too high to use the h2o library in R and R Studio.
About file copy processing in Java
Get stuck in a Java primer
A little troublesome story in Groovy
Call the super method in Java
[Note] A story about changing Java build tools with VS Code
Get the public URL of a private Flickr file in Java
Creating a matrix class in Java Part 2-About matrices (linear algebra)-
A story about having a hard time aligning a testing framework with Java 6
A story about making a calculator to calculate the shell mound rate