Java Spec 은 공개되어 있고 OpenJDK 는 이를 구현한 오픈소스로 여기에 기반하는 다양한 Java JDK 구현물이 있다보니 어떤 종류의 JDK 를 사용해야 하는지 선택이 어렵습니다.


whichjdk.com 은 다양한 JDK 의 특성과 Release 기간등을 정리해 놓은 사이트로 JDK 선택시 참고할만 합니다.

TL;DR

Adoptium Eclipse Temurin - 강력 추천

이클립스 재단의 Adoptium 은 고품질의 Java 제품을 만들기 위한 프로젝트로 Adoptium Working Group 에는 MS, IBM ,RedHat 등 쟁쟁한 오픈소스 기업들이 참여하고 있습니다.


Adoptium 에서 개발하는 JDK 는 Eclipse Temurin 이라 부르는데 local, 운영, CI 환경 모두에 권장하는 제품입니다.


Termurin 은 고품질에 벤더 중립적이고 TCK 테스트도 거쳤습니다.

Cloud 환경은 CSP 제공 제품을

Cloud 에서 Java 를 사용한다면 CSP(Cloud Service Provider) 가 빌드하는 제품이 아무래도 클라우드에 최적화되었을테니 CSP 가 제공하는 걸 쓰는 게 좋습니다.

예로 AWS 를 쓴다면 Amazon 의 Corretto를  Azure 를 쓴다면 Microsoft Build of OpenJDK 를 쓰는 게 좋습니다.

Azul Systems JDK

검증된 Java 기술 전문 회사인 Azul Systems 이 만드는 JDK 로 Zulu 는 무료로 사용할 수 있는 제품으로 권장하는 제품입니다.

예산이 있거나 전문 기술 지원을 받고 싶다면 상용 제품인 Azul Zing 을 구매해서 사용하면 됩니다.


Oracle JDK

오라클 JDK 는 자주 라이센스가 바뀌는데 17 버전은 Oracle No-Fee Terms and Conditions (NFTC) 라이센스입니다.

라이센스는 Internal Business operations 는 무료로 사용할 수 있는데 문제는 이게 무엇인지 명확하게 정의되지 않았습니다.

즉 미래에 라이센스 위반이라고 법무법인에서 소장이 날라올 수도 있다는 거죠.


오라클 제품을 너무 사랑하거나 회사가 미워서 폭탄을 숨겨 놓고 싶거나 또는 지금 무슨 짓을 하고 있는지 정확히 알고 있다면 오라클 JDK 를 쓰세요.

Alibaba JDK

중국 정부랑 일한다면 쓰세요.

JDK 설치/관리

Local 이나 개발 서버라면 SDKMan 을 사용해서 JDK 를 관리하는 게 좋습니다.

JDK Release 주기

새로운 기능을 추가한 major 버전은 1년에 2번, 3월과 9월에 발표되며 추가로 분기별로 버그 픽스 업데이트도 있습니다.

3년마다  9월에 발표되는 버전은 LTS(Long-Term Support) 릴리스로 최소 3년간 지원합니다.


그래서 JDK 를 선택한다면 LTS 인 8, 11, 17 중에서 고르는 게 좋습니다.

JDK VersionTypeRelease DateHighlightsRecommendation
8LTS03/2014LambdasLast LTS version under previous release model. Free updates by Oracle ended, but still maintained by others. Upgrade to a 11 or 17 within the next months!
9Feature09/2017ModulesNew release model was introduced. EOL. Upgrade to 11 or 17 now!
10Feature03/2018varEOL. Upgrade to 11 or 17 now!
11LTS09/2018New HTTP ClientWidely used LTS version. Plan upgrade to version 17 within the next months.
12Feature03/2019
EOL. Upgrade to 17 now!
13Feature09/2019
EOL. Upgrade to 17 now!
14Feature03/2020Switch expressionsEOL. Upgrade to 17 now!
15Feature09/2020Text blocksEOL. Upgrade to 17 now!
16Feature03/2021RecordsEOL. Upgrade to 17 now!
17LTS09/2021Sealed ClassesCurrent LTS version.


같이 보기

Ref