Oracle JDK 뭔지 알아보며 관련하여 유료화 및 Open JDK 에 대해서 알아보겠습니다.
JDK의 구조
JDK => Java Development Kit 의 약자입니다.

자바 언어로 애플리케이션을 개발하려면 JDK 설치는 필수적이다. 이는 컴파일러, 디버깅 등 자바 애플리케이션 개발에 필요한 툴이 포함되어 있으며, 자바 실행환경인 JRE와 가상머신인 JVM도 포함되어 있다. JDK에 JVM이 같이 패키징 되어 배포되는 구조라, 보통 JDK, JVM을 합쳐 JDK라 부릅니다.
제가 이야기 하고 싶은 유료화
이 글을 쓰게 된 계기는 Open JDK , Oracle JDK 그리고 유료화에 대해서 정확히 알고 JDK를 쓰고 싶어서 입니다. 즉 Java 언어를 사용하는 건 무료지만, 이를 실행시키기 위한 컴파일과 실행머신이 유료라는 것이다. 앞에 Oracle이 붙인 이유는 최초 썬 마이크로시스템즈에서 출시된 이후, 2010년 오라클에서 자바를 인수하게 되었다.
그렇다면 Oracle JDK를 쓰면 무조건 돈을 내야 하는 것인가 ?
JDK는 2개 버전으로 나뉜다. 하나는 (1)Oracle JDK , 오픈 소스 기반의 (2)OpenJDK 입니다. 먼저 Oracle JDK 의 흐름에 대해서 알아봅시다.

Oracle JDK 유료화 과정
- 초기 (Sun Microsystems 시절): Sun Microsystems에서 개발 및 배포하던 시절에는 JDK는 기본적으로 무료였습니다. 상업적인 지원이 필요한 경우에만 유료로 지원 계약을 체결할 수 있었습니다.
- Oracle 인수 이후 (2010년 이후): Oracle이 Sun Microsystems를 인수한 후에도 한동안 기존 정책과 유사하게 유지되었습니다. 하지만 시간이 지나면서 Oracle은 상업적인 목적의 JDK 사용에 대한 라이선스 정책을 변경하기 시작했습니다.
- BCL (Binary Code License) 시대: Oracle JDK는 BCL 라이선스 하에 배포되었으며, 개발 및 테스트 용도로는 무료로 사용할 수 있었지만, 상업적인 배포에는 유료 라이선스가 필요하게 되었습니다. 이 시기에 OpenJDK의 중요성이 부각되기 시작했습니다.
- OTN (Oracle Technology Network) 라이선스: BCL 이후 도입된 라이선스로, 개인적인 용도나 개발, 테스트, 프로토타입 제작, 데모 목적 등 비상업적인 용도로는 무료로 사용 가능했습니다. 하지만 상업적인 배포에는 여전히 유료 라이선스가 필요했습니다.
- NFTC (No-Fee Terms and Conditions) 라이선스 (JDK 17부터): JDK 17부터 NFTC 라이선스가 도입되어 대부분의 경우 상업적인 용도를 포함하여 무료로 사용할 수 있게 되었습니다. 하지만 앞서 언급했듯이 LTS 기간 이후의 업데이트/지원이나 특정 Oracle 제품/서비스와의 연동 시에는 유료 라이선스가 필요할 수 있습니다.

무료로 사용할 수 있는 방법은 Open JDK 를 이용 하는 것 입니다.

공식 홈페이지 내용이며 , OpenJDK 프로젝트 자체는 소스 코드만 제공합니다. 하지만 다양한 벤더(AdoptOpenJDK/Adoptium, Azul Zulu, Amazon Corretto, Red Hat build of OpenJDK 등)에서 빌드된 바이너리 배포판을 제공합니다. 이러한 벤더들은 OpenJDK 소스 코드를 가져와 빌드하고 테스트하여 사용자가 바로 사용할 수 있는 형태로 배포합니다.
JAVA SE 란?
JAVA Standard Edition 으로 가장 대중적인 자바 플랫폼 흔히 자바 언어라고하는 대부분의 패키지가 포함된 에디션 으로 java.lang., java.util., java.awt., javax.rmi., javax.net.* 등 이 포함 되어있는 JAVA 플랫폼을 말합니다.
결론 : Open JDK 를 설치 하기 위해서 다운로드 경로에서 java SE 17 를 다운로드 하였습니다.
직접 Open JDK 를 다운로드 하기 위해 찾아보았는데 인텔리제이에서 [project 설정] - [Plaform settings] - Open JDK 다운로드가 있습니다. 즉, Open JDK 벤더사가 있는데 벤더사가 무료로 Open JDK 를 배포 하여 제공하는 것입니다.

결론
- Java 언어 사용은 무료입니다.
- OpenJDK는 무료 오픈 소스 구현체이며, 다양한 벤더에서 바이너리 배포판을 제공합니다.
- Oracle JDK는 OpenJDK를 기반으로 하며, NFTC 라이선스로 대부분의 용도에서 무료로 사용할 수 있습니다. 유료인 경우는 LTS 기간 이후의 지원이나 Oracle 제품/서비스와 연동할 때 등입니다.
- jdk.java.net에서는 OpenJDK 소스 코드를 제공하며, 바이너리는 다른 벤더에서 다운로드해야 합니다.
'개발일지 > JAVA,SPRING' 카테고리의 다른 글
| 📌 Java 접근 제어자(private / default / protected / public) 완전 정리 (0) | 2025.12.12 |
|---|---|
| @Bean 객체 만들기, @Component vs @Configuration (4) | 2025.05.23 |
| JAVA , 추상화,인터페이스 와 캡슐화 다루기. (0) | 2025.05.19 |
| 쿠키,세션 알아보기 (With Spring) (2) | 2025.05.19 |