Menu

OpenJDK 완벽 정복: 자바 개발자라면 꼭 알아야 할 모든 것 🚀

OpenJDK와 자바 생태계를 상징하는 추상적인 이미지

자바 개발자라면 누구나 한 번쯤은 "어떤 JDK를 써야 하지?"라는 고민을 해보셨을 겁니다. 특히 몇 년 전 Oracle JDK의 라이선스 정책 변경은 많은 개발자 커뮤니티에 큰 파장을 일으켰죠. "이제 돈 내고 써야 하나?", "우리 회사 프로젝트는 괜찮을까?" 같은 걱정들이 쏟아져 나왔습니다. 하지만 걱정 마세요! 우리에겐 강력하고 자유로운 대안, 바로 OpenJDK가 있으니까요. 이 글에서는 자바의 심장이자 이제는 표준이 된 OpenJDK의 모든 것을 쉽고 깊이 있게 파헤쳐 보겠습니다. 😉

1. OpenJDK, 넌 대체 누구냐? (Oracle JDK와의 관계)

가장 먼저 드는 궁금증! "OpenJDK랑 Oracle JDK는 뭐가 다른 거야?" 결론부터 말하자면, 이제는 거의 똑같다고 할 수 있습니다. 비유하자면, 크롬(Chrome) 브라우저와 크로미움(Chromium)의 관계와 비슷해요. 크로미움은 누구나 가져다 쓸 수 있는 오픈소스 프로젝트이고, 구글은 이 크로미움에 몇 가지 기능을 더해 크롬 브라우저를 만들죠.

마찬가지로, OpenJDK는 자바 플랫폼(Java SE)의 공식 참조 구현체(Reference Implementation)인 오픈소스 프로젝트입니다. 그리고 Oracle JDK는 바로 이 OpenJDK 소스 코드를 기반으로 만들어집니다. 과거에는 Oracle JDK에만 있던 특별한 기능(Flight Recorder 등)이 있었지만, Java 11 이후로는 이 기능들마저 OpenJDK에 기여되면서 기술적인 차이는 사실상 사라졌습니다. 즉, 성능이나 기능 면에서 둘은 동일하다고 봐도 무방합니다.

"Java 11부터 Oracle JDK와 OpenJDK는 기능적으로 동일한 코드베이스를 공유합니다. 진짜 차이점은 기술이 아니라 '라이선스'와 '지원' 정책에 있습니다." – 개발자 커뮤니티의 중론

2. 왜 OpenJDK를 선택해야 할까? (라이선스와 커뮤니티 반응)

기술적으로 같다면 왜 굳이 OpenJDK를 써야 할까요? 정답은 바로 '자유'에 있습니다. Oracle은 2019년부터 Oracle JDK 8의 장기 지원(LTS) 업데이트를 유료 구독 모델로 전환했고, 이후 버전들에 대해서도 상업적 사용 시 유료 라이선스를 요구하기 시작했습니다. 이 변화는 "잘못 쓰면 라이선스 폭탄을 맞을 수 있다"는 불안감을 낳았죠.

반면, OpenJDK는 GPL v2 with Classpath Exception 라이선스를 따릅니다. 어렵게 들리지만, 쉽게 말해 개인이든 기업이든, 개발용이든 상업용이든 완전히 무료로 자유롭게 사용할 수 있다는 뜻입니다. 이 점이 바로 모든 개발자가 OpenJDK로 눈을 돌린 결정적인 이유입니다.

라이선스로부터의 자유를 상징하는 OpenJDK 커뮤니티 반응
수많은 개발자들이 Reddit과 같은 커뮤니티에서 라이선스 걱정 없는 OpenJDK를 추천하고 있습니다.

실제로 Reddit의 r/java 같은 대형 커뮤니티에 가보면, "어떤 JDK를 써야 하나요?"라는 질문에 대부분의 숙련된 개발자들이 "특별한 이유가 없다면 Eclipse Temurin 같은 OpenJDK 배포판으로 시작하세요"라고 조언하는 것을 쉽게 볼 수 있습니다. 예기치 않은 라이선스 감사나 비용 청구의 위험 없이 순수하게 개발에만 집중할 수 있다는 것이 가장 큰 매력인 셈이죠.

3. 어떤 OpenJDK를 써야 할까? (주요 배포판 전격 비교)

OpenJDK는 오픈소스 '프로젝트'이다 보니, 여러 기업과 재단에서 이 소스를 가져다가 빌드하고 테스트해서 안정적인 버전을 '배포'합니다. 이를 '배포판(Distribution)'이라고 부르죠. 리눅스에 우분투, 페도라 등 여러 배포판이 있는 것과 같습니다. 어떤 것을 선택해야 할지 막막한 분들을 위해 가장 인기 있는 배포판들을 비교해 드릴게요!

배포판 주요 관리 주체 특징 및 장점 이런 분께 추천해요!
Eclipse Temurin Eclipse Adoptium 가장 표준적이고 범용적인 배포판. TCK 인증을 거친 높은 안정성. 폭넓은 플랫폼과 버전 지원. "뭐가 좋을지 모르겠어요" 하는 입문자, 특정 벤더에 종속되기 싫은 모든 개발자. (강력 추천!)
Amazon Corretto Amazon (AWS) AWS에서 내부적으로 수천 개 서비스에 사용하는 검증된 버전. 성능 패치 및 보안 개선 포함. AWS 환경에서 애플리케이션을 운영하는 개발자.
Azul Zulu Azul Systems 가장 폭넓은 버전(오래된 버전 포함)과 플랫폼 지원. 상용 지원 옵션(Zing)도 제공. 레거시 시스템을 유지보수하거나, 비주류 OS/아키텍처 지원이 필요한 경우.
Microsoft Build of OpenJDK Microsoft Microsoft Azure 환경에 최적화. Visual Studio Code 등 개발 도구와 통합성이 좋음. Azure 클라우드 서비스를 사용하거나, MS 개발 생태계에 익숙한 개발자.

이 외에도 Red Hat, SAP, Liberica 등 다양한 배포판이 있지만, 대부분의 경우 Eclipse Temurin으로 시작하면 후회할 일이 없습니다. 커뮤니티의 지지도 가장 높고, 가장 '표준'에 가까운 선택지이기 때문입니다.

핵심 포인트

OpenJDK는 Oracle JDK와 기능/성능이 동일한 무료 오픈소스 자바 개발도구입니다. 라이선스 걱정 없이 상업적으로도 자유롭게 사용할 수 있으며, 수많은 배포판 중 Eclipse Temurin이 가장 무난하고 강력한 첫 선택지입니다.

4. OpenJDK 설치 및 환경 변수 설정 (OS 완벽 가이드)

자, 이제 이론은 충분히 배웠으니 직접 설치해 볼 시간입니다! 여기서는 가장 표준적인 Eclipse Temurin을 기준으로, Windows, macOS, Linux 환경에서의 설치 및 설정 방법을 안내해 드릴게요. 하나씩 차근차근 따라오시면 절대 어렵지 않습니다.

Windows
macOS
Linux

Windows에 OpenJDK 설치하기

  1. 설치 파일 다운로드: Adoptium 공식 웹사이트에 접속하여 LTS 버전(장기 지원 버전)의 .msi 설치 파일을 다운로드합니다. (보통 웹사이트가 알아서 OS에 맞는 버전을 추천해 줍니다.)
  2. 설치 프로그램 실행: 다운로드한 .msi 파일을 실행하고, 설치 마법사의 안내를 따릅니다. 여기서 가장 중요한 단계가 나타납니다!
  3. 설치 옵션 설정 (⭐중요⭐): 설치 과정 중 'Custom Setup' 단계에서 아래 두 가지 옵션을 반드시 설정해주세요.
    • 'Add to PATH'를 'Will be installed on local hard drive'로 설정합니다.
    • 'Set JAVA_HOME variable'를 'Will be installed on local hard drive'로 설정합니다.

    이렇게 하면 골치 아픈 환경 변수 설정이 자동으로 완료됩니다! 정말 편리하죠?

    Windows Temurin 설치 프로그램의 환경 변수 자동 설정 옵션
    설치 단계에서 이 두 옵션을 활성화하면 모든 것이 자동으로 설정됩니다.
  4. 설치 확인: 설치가 완료되면 '명령 프롬프트(cmd)'나 'PowerShell'을 열고 아래 명령어를 입력해 보세요.
java -version
javac -version
echo %JAVA_HOME%

위 명령어들이 오류 없이 버전 정보와 설치 경로를 보여준다면 성공적으로 설치된 것입니다! 만약 자동 설정을 놓쳤다면 '시스템 환경 변수 편집'에서 직접 JAVA_HOMEPath를 설정해주어야 합니다.

macOS에 OpenJDK 설치하기

macOS 사용자는 Homebrew라는 패키지 관리자를 사용하는 것이 가장 간편하고 일반적인 방법입니다.

  1. Homebrew 설치: 터미널을 열고, 아직 Homebrew가 없다면 공식 사이트의 명령어를 붙여넣어 설치합니다.
  2. OpenJDK 설치: 터미널에 아래 명령어를 입력하여 Temurin을 설치합니다.
brew install --cask temurin

Homebrew가 알아서 최신 LTS 버전을 설치하고 시스템 경로까지 잡아줍니다. 정말 간단하죠? M1/M2/M3 등 Apple Silicon 맥에서도 완벽하게 작동합니다.

  1. 설치 확인: 설치가 완료되면 터미널에 아래 명령어를 입력하여 확인합니다.
java -version
/usr/libexec/java_home -V

두 번째 명령어는 시스템에 설치된 모든 JDK 버전을 보여주며, 현재 활성화된 버전을 알려줍니다. JAVA_HOME은 보통 .zshrc.bash_profile에 자동으로 설정되지만, 필요하다면 직접 추가할 수도 있습니다.

Linux에 OpenJDK 설치하기

리눅스는 배포판마다 패키지 관리자가 다르지만, 대부분 간단한 명령어로 설치할 수 있습니다.

Debian / Ubuntu 계열 (apt 사용)

sudo apt update
sudo apt install temurin-21-jdk

Fedora / CentOS / RHEL 계열 (dnf/yum 사용)

sudo dnf install temurin-21-jdk

위 명령어의 '21'은 JDK 버전이므로, 원하는 버전에 맞게 숫자를 변경해주시면 됩니다.

설치 확인 및 JAVA_HOME 설정

설치 후 터미널에서 버전을 확인합니다.

java -version
javac -version

리눅스에서는 JAVA_HOME을 직접 설정해주는 것이 좋습니다. /etc/environment 파일이나 ~/.bashrc 또는 ~/.zshrc 파일 끝에 아래 내용을 추가하세요. (설치 경로는 시스템마다 다를 수 있으니 update-alternatives --config java 명령어로 확인하세요)

export JAVA_HOME="/usr/lib/jvm/temurin-21-jdk-amd64"
export PATH=$JAVA_HOME/bin:$PATH

파일을 저장한 뒤 source ~/.bashrc (또는 사용하는 쉘 설정 파일) 명령어를 실행하거나 터미널을 재시작하면 환경 변수가 적용됩니다. echo $JAVA_HOME 명령어로 확인하는 것 잊지 마세요!

마무리: 두려워 말고 OpenJDK의 세계로!

이제 OpenJDK가 무엇인지, 왜 써야 하는지, 그리고 어떻게 설치하는지 모두 알게 되셨습니다! Oracle JDK의 라이선스 이슈는 더 이상 자바 개발의 걸림돌이 아닙니다. 오히려 커뮤니티 중심의 수많은 OpenJDK 배포판 덕분에 선택의 폭은 더 넓어졌고, 우리는 라이선스 걱정 없이 개발의 즐거움에만 집중할 수 있게 되었죠.

혹시 아직도 Oracle JDK를 사용하고 계신가요? 이번 기회에 여러분의 시스템에 꼭 맞는 OpenJDK 배포판을 설치하고, 자유로운 자바 개발의 세계를 마음껏 즐겨보시는 건 어떨까요? 여러분의 다음 프로젝트는 OpenJDK와 함께 시작해보세요! 🚀

공유하기:
Home Search New Post