Java 애플리케이션을 개발하거나 실행하기 위해서는 Java 개발환경 JDK나 JRE(Java SE)를 설치해야 합니다. 우리는 그 중에서 무료로 사용이 가능한 오픈소스인 OpenJDK를 쉽고 빠르게 다운로드하고 설치하는 방법을 운영체제별로 상세히 알아보겠습니다.
1. OpenJDK란 무엇인가?
OpenJDK(Open Java Development Kit)는 Java SE(Java Platform, Standard Edition)의 오픈소스 구현체입니다. 2006년에 시작된 이 프로젝트는 현재 Oracle과 커뮤니티가 함께 개발하고 있으며, GPL v2 라이센스로 무료로 사용할 수 있습니다.
Java 7 이후로 OpenJDK는 Java SE의 공식 레퍼런스 구현체가 되었으며, 현재는 대부분의 개발 환경에서 표준으로 사용되고 있습니다.
2. OpenJDK 다운로드 및 설치하기
2.1 Windows에 OpenJDK 설치하기
Windows에서는 다음과 같은 방법으로 OpenJDK를 설치할 수 있습니다.
방법 1: Microsoft Build of OpenJDK 설치 (권장)
- Microsoft OpenJDK 다운로드 페이지에 접속합니다.
- 원하는 버전(예: Java 17, Java 21)의 .msi 파일을 다운로드합니다.
- 다운로드한 .msi 파일을 실행하고 설치 마법사의 지시에 따릅니다.
- 설치가 완료되면 자동으로 환경 변수가 설정됩니다.
방법 2: Eclipse Temurin(AdoptOpenJDK) 설치
- Eclipse Adoptium 다운로드 페이지에 접속합니다.
- 원하는 버전의 OpenJDK를 선택합니다.
- Windows 운영체제를 선택하고 .msi 설치 파일을 다운로드합니다.
- 다운로드한 .msi 파일을 실행하고 설치 마법사의 지시에 따릅니다.
방법 3: ZIP 파일로 수동 설치
- OpenJDK 공식 사이트에서 원하는 버전의 Windows용 ZIP 파일을 다운로드합니다.
- 다운로드한 ZIP 파일을 원하는 위치(예: C:\Program Files\Java)에 압축 해제합니다.
- 환경 변수를 수동으로 설정합니다:
- 제어판 > 시스템 > 고급 시스템 설정 > 환경 변수로 이동
- 시스템 변수에서 새로 만들기를 클릭하여 ‘JAVA_HOME’ 변수를 추가하고 JDK 설치 경로 지정 (예: C:\Program Files\Java\jdk-21)
- Path 변수를 편집하여 ‘%JAVA_HOME%\bin’을 추가
Windows에서 설치 확인
명령 프롬프트를 열고 다음 명령어를 입력합니다:
java -version
설치된 Java 버전 정보가 표시되면 설치가 성공적으로 완료된 것입니다.
2.2 macOS에 OpenJDK 설치하기
macOS에서는 다음과 같은 방법으로 OpenJDK를 설치할 수 있습니다.
방법 1: Homebrew를 사용한 설치 (권장)
- 터미널을 엽니다.
- 다음 명령어를 실행하여 Homebrew가 설치되어 있는지 확인합니다:
brew --version
- Homebrew가 설치되어 있지 않다면 다음 명령어로 설치합니다:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- OpenJDK를 설치합니다:
brew install --cask temurin # 최신 LTS 버전 설치
- 특정 버전을 원한다면 다음과 같이 설치합니다:
brew install --cask temurin8 # Java 8brew install --cask temurin11 # Java 11brew install --cask temurin17 # Java 17brew install --cask temurin21 # Java 21
- Microsoft 빌드를 원한다면:
brew install --cask microsoft-openjdk
방법 2: 바이너리 패키지 수동 설치
- OpenJDK 공식 사이트에서 macOS용 .tar.gz 파일을 다운로드합니다.
- 다운로드한 파일을 더블클릭하여 압축을 해제합니다.
- 터미널을 열고 다음 명령어를 실행하여 추출된 JDK 폴더를 적절한 위치로 이동합니다:
sudo mv ~/Downloads/jdk-21.jdk /Library/Java/JavaVirtualMachines/
- 비밀번호를 입력하여 관리자 권한으로 작업을 완료합니다.
macOS에서 설치 확인
터미널을 열고 다음 명령어를 입력합니다:
java -version
설치된 Java 버전 정보가 표시되면 설치가 성공적으로 완료된 것입니다.
2.3 Linux에 OpenJDK 설치하기
Linux 배포판에 따라 OpenJDK 설치 방법이 다릅니다.
Ubuntu/Debian 계열 배포판
- 패키지 리스트를 업데이트합니다:
sudo apt update
- OpenJDK를 설치합니다:
sudo apt install openjdk-17-jdk # JDK 17 설치
- 다른 버전을 설치하려면 숫자만 변경합니다:
sudo apt install openjdk-8-jdk # JDK 8sudo apt install openjdk-11-jdk # JDK 11sudo apt install openjdk-21-jdk # JDK 21
CentOS/RHEL/Fedora 계열 배포판
- OpenJDK를 설치합니다:
sudo dnf install java-17-openjdk-devel # JDK 17 설치
- 다른 버전을 설치하려면 숫자만 변경합니다:
sudo dnf install java-1.8.0-openjdk-devel # JDK 8sudo dnf install java-11-openjdk-devel # JDK 11sudo dnf install java-21-openjdk-devel # JDK 21
Arch Linux 배포판
- OpenJDK를 설치합니다:
sudo pacman -S jdk-openjdk # 최신 JDK 설치
- 특정 버전을 설치하려면:
sudo pacman -S jdk8-openjdksudo pacman -S jdk11-openjdksudo pacman -S jdk17-openjdk
바이너리 패키지 수동 설치 (모든 Linux 배포판)
- OpenJDK 공식 사이트에서 Linux용 .tar.gz 파일을 다운로드합니다.
- 다운로드한 파일을 압축 해제합니다:
tar -xzf openjdk-21_linux-x64_bin.tar.gz
- 추출된 폴더를 원하는 위치로 이동합니다:
sudo mv jdk-21 /opt/
- 환경 변수를 설정합니다. ~/.bashrc 파일을 열고 다음 줄을 추가합니다:
export JAVA_HOME=/opt/jdk-21export PATH=$JAVA_HOME/bin:$PATH
- 변경사항을 적용합니다:
source ~/.bashrc
Linux에서 설치 확인
터미널에서 다음 명령어를 입력합니다:
java -version
설치된 Java 버전 정보가 표시되면 설치가 성공적으로 완료된 것입니다.
3. Java 버전 확인 및 관리
3.1 설치된 Java 버전 확인하기
터미널 또는 명령 프롬프트에서 다음 명령어를 실행하여 설치된 Java 버전을 확인할 수 있습니다:
java -version
JDK가 올바르게 설치되었다면 다음과 유사한 출력이 표시됩니다:
openjdk version "21.0.2" 2023-01-17
OpenJDK Runtime Environment (build 21.0.2+13-LTS)
OpenJDK 64-Bit Server VM (build 21.0.2+13-LTS, mixed mode, sharing)
3.2 여러 Java 버전 관리하기
여러 버전의 Java를 설치하고 필요에 따라 전환하는 방법입니다.
Windows에서 여러 버전 관리
- 각 버전을 개별 폴더에 설치합니다.
- 시스템 환경 변수 JAVA_HOME을 원하는 버전의 경로로 변경합니다.
- Path 변수를 업데이트합니다.
macOS와 Linux에서 SDKMAN! 사용
SDKMAN!은 다양한 SDK 버전을 관리하는 도구입니다:
- SDKMAN! 설치:
curl -s "https://get.sdkman.io" | bash
- 터미널을 재시작하거나 다음 명령어를 실행:
source "$HOME/.sdkman/bin/sdkman-init.sh"
- 사용 가능한 Java 버전 목록 확인:
sdk list java
- 원하는 버전 설치:
sdk install java 21.0.2-tem
- 기본 버전 설정:
sdk default java 21.0.2-tem
- 임시로 버전 전환:
sdk use java 17.0.5-tem
4. 주요 OpenJDK 배포판 소개
다양한 기업과 단체에서 OpenJDK 기반 빌드를 제공하고 있습니다. 목적에 맞는 배포판을 선택할 수 있습니다.
4.1 Eclipse Temurin (구 AdoptOpenJDK)
- 제공 단체: Eclipse Foundation
- 특징: 벤더 중립적, TCK 테스트 통과, 고품질
- 추천 환경: 개발 및 프로덕션 모두 적합
- 다운로드: Eclipse Adoptium
4.2 Microsoft Build of OpenJDK
- 제공 기업: Microsoft
- 특징: Windows 및 Azure 환경에 최적화
- 추천 환경: Microsoft 환경 및 Azure 클라우드
- 다운로드: Microsoft OpenJDK
4.3 Amazon Corretto
- 제공 기업: Amazon
- 특징: AWS 환경에 최적화, 장기 지원
- 추천 환경: AWS 클라우드
- 다운로드: Amazon Corretto
4.4 Azul Zulu
- 제공 기업: Azul Systems
- 특징: 안정적인 빌드, 상업 지원 가능
- 추천 환경: 기업 환경, 프로덕션
- 다운로드: Azul Zulu
4.5 Red Hat OpenJDK
- 제공 기업: Red Hat
- 특징: RHEL 환경 최적화
- 추천 환경: Red Hat Enterprise Linux
- 다운로드: Red Hat OpenJDK
5. OpenJDK 버전 선택 가이드
5.1 LTS(장기 지원) 버전
LTS 버전은 장기간 보안 업데이트와 버그 수정을 제공받을 수 있습니다. 프로덕션 환경에는 LTS 버전을 권장합니다.
현재 OpenJDK LTS 버전:
- Java 8: 2014년 3월 출시, 많은 레거시 시스템에서 여전히 사용 중
- Java 11: 2018년 9월 출시
- Java 17: 2021년 9월 출시
- Java 21: 2023년 9월 출시, 현재 가장 최신 LTS 버전
5.2 비 LTS 버전
비 LTS 버전은 6개월마다 출시되며, 최신 기능을 시험해 볼 수 있지만 지원 기간이 짧습니다. 최신 기능을 테스트하거나 개발 환경에서 사용하기 적합합니다.
현재 최신 비 LTS 버전:
- Java 24: 2024년 3월 출시
6. OpenJDK 사용 시 알아두면 좋은 팁
6.1 환경 변수 설정
대부분의 Java 기반 도구는 JAVA_HOME 환경 변수를 사용하여 JDK 위치를 찾습니다. 올바르게 설정되어 있는지 확인하세요.
6.2 보안 업데이트
OpenJDK는 정기적으로 보안 업데이트를 받는 것이 중요합니다. 특히 프로덕션 환경에서는 최신 패치를 적용하세요.
6.3 메모리 설정
Java 애플리케이션의 성능을 최적화하려면 JVM 메모리 설정을 조정할 수 있습니다:
java -Xms512m -Xmx1024m -jar myapp.jar
- Xms: 초기 힙 크기
- Xmx: 최대 힙 크기
6.4 가비지 컬렉션 튜닝
대규모 애플리케이션의 경우 가비지 컬렉션 알고리즘을 선택하고 튜닝할 수 있습니다:
java -XX:+UseG1GC -jar myapp.jar # G1 가비지 컬렉터 사용
7. 자주 묻는 질문(FAQ)
Q: OpenJDK와 Oracle JDK의 주요 차이점은 무엇인가요?
A: OpenJDK는 오픈소스이며 무료로 사용할 수 있고, Oracle JDK는 상업적 용도로 사용할 경우 라이센스 비용이 발생할 수 있습니다. 기능적으로는 최근 버전들은 거의 동일합니다.
Q: 어떤 OpenJDK 배포판을 선택해야 할까요?
A: 개발 환경이나 배포 환경에 따라 달라집니다. 범용적으로는 Eclipse Temurin을 권장하며, 특정 클라우드 환경에서는 해당 제공업체의 배포판(예: AWS에서는 Corretto)을 사용하는 것이 좋습니다.
Q: OpenJDK를 업데이트하는 방법은 무엇인가요?
A: 배포판과 설치 방법에 따라 다릅니다. 패키지 관리자로 설치했다면 해당 관리자를 통해 업데이트하고, 수동으로 설치했다면 새 버전을 다운로드하여 교체하세요.
Q: JDK와 JRE의 차이점은 무엇인가요?
A: JDK(Java Development Kit)는 Java 애플리케이션을 개발하는 데 필요한 도구를 포함하며, JRE(Java Runtime Environment)는 Java 애플리케이션을 실행하는 데 필요한 환경만 제공합니다.
Q: 어떤 Java 버전을 선택해야 할까요?
A: 프로덕션 환경에서는 안정성을 위해 최신 LTS 버전(현재 Java 21)을 권장합니다. 기존 코드 호환성 문제가 있다면 Java 17이나 Java 11을 고려할 수 있습니다.
이번 포스트에서는 OpenJDK의 다운로드와 설치 방법, 다양한 배포판, 버전 선택 가이드 등을 살펴보았습니다. OpenJDK를 통해 무료로 Java 개발 환경을 구축할 수 있습니다. 하지만 가장 중요한 것은, 자신의 환경과 목적에 맞는 배포판을 선택하는 것입니다. 최신 Java 개발 동향을 따라가면서도 안정적인 프로덕션 환경을 유지하기 위해서는 LTS 버전을 설치하는 것이 좋습니다. 왜냐하면 안정성이 중요하니까요! 참 그리고 정기적으로 보안 업데이트를 하는 것도 잊지 말아 주시기 바랍니다. 왜냐하면 보안 역시 엄청 엄청 중요하니까요! 🙂