Linux - OpenJDK 17, OpenJDK 21 설치

1. Java 설치

터미널에서 다음 명령어를 입력하여 OpenJDK를 설치합니다.

OpenJDK 17 설치

# 1. 설치 가능한 OpenJDK 17 버전 확인
sudo dnf search java-17-openjdk*

# 2. OpenJDK 17 설치
sudo dnf install java-17-openjdk-devel -y

OpenJDK 21 설치

# 1. 설치 가능한 OpenJDK 21 버전 확인
sudo dnf search java-21-openjdk*

# 2. OpenJDK 21 설치
sudo dnf install java-21-openjdk-devel -y

2. Java 버전 전환 및 관리 (Alternatives)

alternatives : Rocky Linux 및 RHEL 계열 리눅스에서 시스템에 설치된 여러 버전의 동일한 프로그램 중에서, 기본적으로 사용할 버전을 선택하고 관리하는 시스템 유틸리티입니다.
# 1. 설치된 Java 버전 목록 확인 및 선택
sudo alternatives --config java
# 1, 2, 3... 번호를 입력하여 기본 설정 변경 가능

# 2. 설치된 javac(컴파일러) 버전 목록 확인 및 선택
sudo alternatives --config javac

3. JAVA_HOME 환경 변수 추가

시스템 전역에서 Java 경로를 인식할 수 있도록 java.sh 파일을 생성하여 설정합니다.

# 1. java.sh 파일 생성 및 작성
sudo tee /etc/profile.d/java.sh <# 현재 설정된 java 실행 파일의 실제 경로를 찾아 JAVA_HOME 변수로 설정
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:/bin/java::")
export PATH=\$JAVA_HOME/bin:\$PATH
export CLASSPATH=.:\$JAVA_HOME/lib/tools.jar
EOF

# 2. 설정 반영
source /etc/profile.d/java.sh
명령어 참고:
- tee: 표준 입력을 받아 화면과 파일에 동시에 출력합니다.
- <<EOF: EOF 문구가 나올 때까지의 내용을 입력으로 전달합니다.

4. java.sh 에 alias 설정

필요에 따라 Java 버전을 즉시 전환할 수 있도록 별칭(alias)을 추가합니다.

# 설정 파일 열기
sudo vi /etc/profile.d/java.sh

# 하단에 아래 내용 추가
# 1. Java 17 환경 설정 alias
alias setJava17='export JAVA_HOME=/usr/lib/jvm/java-17-openjdk && export PATH=\$JAVA_HOME/bin:\$PATH && echo "Java 17 Activated"'

# 2. Java 21 환경 설정 alias
alias setJava21='export JAVA_HOME=/usr/lib/jvm/java-21-openjdk && export PATH=\$JAVA_HOME/bin:\$PATH && echo "Java 21 Activated"'
설정 후 source /etc/profile.d/java.sh를 실행하거나 터미널을 재시작하면 setJava17 또는 setJava21 명령어로 버전을 빠르게 전환할 수 있습니다.