1. JDK (Java Development Kit)의 종류와 성격
Java 자체는 무료 언어이며 이를 실행할 수 있는 환경으로 만들어주는 JRE(Java Runtime Environment)에 개발 및 기타도구들이 포함된 것이 JDK이다. 따라서 Java로 구현된 class파일들을 단순히 실행만 할 것이라면 JRE만 있으면 되며 개발까지 하려면 JDK가 필요하게 된다.
JCP(JAva Community Process) 라는 곳에서 Java 플랫폼에 추가될 기술 및 표준을 정의하고 이를 기준으로 생성되는 것이 OpenJDK이며 이것을 기반으로 추가적으로 보안이슈를 수정하거나 기능을 추가하여 각 단체 또는 회사에서 자기들만의 JDK버전을 배포하게 되는데, Oracle JDK도 이중의 하나인 것이다.
- Free Builds from Source(소스에서 무료 빌드)
- the distribution source code is publicly available and one can assemble its own build
- 배포 소스 코드는 공개적으로 사용 가능하며 자체 빌드를 조합 할 수 있습니다.
- Free Binary Distribution(무료 바이너리 배포)
- the distribution binaries are publicly available for download and usage
- 배포 바이너리는 공개적으로 다운로드하고 사용할 수 있습니다.
- Extended Updates(확장 업데이트)
- aka LTS (long-term support) - Public updates beyond the 6-month release lifecycle
- 일명 LTS (장기 지원)-6 개월 릴리스 수명주기 이후의 공개 업데이트
- Commercial Support(상업적 지원)
- some providers offer extended updates and customer support to paying customers, e.g.Oracle JDK
- 일부 제공 업체는 유료 고객에게 확장 업데이트 및 고객 지원을 제공합니다 (예 : Oracle JDK).
- Permissive License(허용 라이센스)
- the distribution license is non-protective, e.g.Apache 2.0
- 배포 라이센스가 비보호적입니다 (예 : Apache 2.0)
2. 어떤 JDK를 선택할 것인가?
출처
minkukjo.github.io/language/2020/06/02/Java-01/
stackoverflow.com/questions/52431764/difference-between-openjdk-and-adoptium-adoptopenjdk