JDK는 크게 2가지 버전으로 나누어지는데 폐쇄적인 상업 기반의 코드로 이루어진 Oracle JDK 그리고 오픈 소스 기반의 Open JDK 이다.
큰 차이는 없지만 Oracle JDK는 Open JDK에 없는 재산권이 걸린 플러그인을 제공하고 있다. Oracle JDK에만 존재하는 대표적인 기능이 있다면 Java Web Start 그리고 글꼴 라이브러리가 있다.
옛날 자바 6에서는 Open JDK이 성능이나 안정성이 크게 떨어졌지만 현재에는 Oracle 제공하고 있는 일부 기능을 제외하고는 크게 차이가 없다.
StackOverFlow에서 본 Oracle JDK and Open JDK에 대한 설명
Open JDK와 Oracle JDK는 현지 오라클에 의해 관리 또는 유지되고 있다. Open JDK와 Oracle JDK는 같은 TCK(Technology Compatibility Kit)에 의해 검증 또는 테스트 되어진다.
여기서 TCK란 ? 자바 기술을 구현한 licensee들의 VM이 규격에 맞게 구현되었는지 검증하는 테스트 프로그램과 그 도구 Most of the vendors of JDK are written on top of OpenJDK by doing a few tweaks to [mostly to replace licensed proprietary parts / replace with more high-performance items that only work on specific OS] components without breaking the TCK compatibility. 해석을 제대로 했는지 모르지만... 해석해 보자면 대부분의 JDK 벤더사들은 그들이 가진 특정 OS에서 최적화를 하기 위해 부분적으로 수정하고 있으며 TCK를 통과해야 한다. 벤더사의 예를 들자면 IBM J9, Azul Zulu, Azul Zing, and Oracle JDK, 트위터를 들 수 있다. 대부분의 JDK들은 Open JDK로부터 파생되어졌다. |
Open JDK와 Oracle JDK의 차이는 ?
위에서 설명했듯이 특정 기능 Java Web Start 그리고 글꼴 라이브러리 을 예를 들 수 있다.
또한 사용 목적에 따라 Oracle은 유료이냐 무료이냐의 특성을 가지고 있지만 Open JDK는 무료이다.!
참조 : 지단로보트
'Java 개발 이야기' 카테고리의 다른 글
자바 람다와 함수형 인터페이스 - part1 (0) | 2018.10.21 |
---|---|
자바 Clone에 대해서 (0) | 2018.10.04 |
자바 강한참조(Strong Reference)와 약한참조(Weak Reference) (0) | 2018.10.03 |
자바 박싱(boxing)과 언박싱(unboxing) (0) | 2018.09.27 |
자바 가변인자(Varargs)에 대해서 (0) | 2018.09.18 |