Programming/MacOS

Mac Java version(JDK 버전) 변경하는 방법

Jan92 2024. 1. 7. 01:29

MacOS Java version(JDK 버전) 변경하는 방법

mac java version 변경하는 방법

해당 포스팅은 'MacOS에서 설치된 Java 버전(Java 환경변수)을 변경하는 방법'에 대해 정리한 내용입니다.

(Java 환경변수에 대해 일시적으로 설정을 바꾸는 방법이 아니라 'zshrc' 또는 'bash_profile'의 수정을 통해 영구적으로 바꾸는 것입니다.)

 


zsh와 bash 차이점

'zsh''bash'는 둘 다 리눅스 쉘(Shell)의 한 종류입니다.

쉘은 명령어와 프로그램을 실행할 때 사용하는 인터페이스로 커널(Kernel)과 사용자 간의 다리 역할을 하며, 사용자로부터 명령을 받아 그것을 해석하고 프로그램을 실행하는 역할을 하게 됩니다.

 

'bash''zsh' 둘 다 'sh' 쉘을 기반으로 만들어졌으며, 쉽게 Unix 계열에서는 bash를 사용하고 Mac 계열에서는 zsh를 사용한다고 생각하면 됩니다.

* MacOS에서는 카탈리나(Catalina, 10.5 버전)부터 기본 쉘이 zsh로 바뀌었습니다.

 

echo $SHELL

mac에서 현재 사용되고 있는 기본 쉘을 확인하는 방법은 위 'echo $SHELL' 명령어를 통해서 확인이 가능하며, 터미널 상단에서도 학인할 수 있습니다.

 


Java version 확인

이어서 현재 기본으로 사용되고 있는 Java 버전 및 설치된 JDK 버전을 확인하는 부분입니다.

 

 

1. 현재 Java 버전 확인

java -version

다음 'java -version' 명령어를 통해 현재 기본으로 사용되고 있는 자바 버전을 확인할 수 있습니다.

 

 

2. 설치된 모든 jdk 확인

/usr/libexec/java_home -V

이어서 '/usr/libexec/java_home -V' 명령어를 통해 설치된 JDK 버전을 확인할 수 있습니다.

 


Java version 변경

// 'zsh' 쉘을 사용하고 있는 경우 
vim ~/.zshrc

// 'bash' 쉘을 사용하고 있는 경우
vim ~/.bash_profile

위 vim 명령어를 통해 사용하고 있는 쉘의 설정 파일을 열어 아래 내용을 추가해 줍니다.

 

# JAVA
export JAVA_HOME=$(/usr/libexec/java_home -v 11)

예시 코드에서는 'jdk 11' 버전으로 변경하려는 내용이며, '-v' 뒤에 버전을 명시해 줌으로써 원하는 java 버전을 설정할 수 있습니다.

해당 내용을 추가해 준 뒤 파일('zshrc' 또는 'bash_profile')을 저장해 줍니다.

 

* 이때 당연히 변경하려는 버전이 설치가 된 상태여야 합니다.

 

 

(vim 편집기에 관련된 명령어를 모르신다면 아래 포스팅을 참고해 주시면 좋을 것 같습니다.)

2022.11.24 - [Programming/Linux] - 리눅스 파일 편집기 vi 자주 사용되는 명령어 정리

 

 

# JAVA
export JAVA_HOME_17=$(/usr/libexec/java_home -v 17)
export JAVA_HOME_11=$(/usr/libexec/java_home -v 11)

export JAVA_HOME=$JAVA_HOME_17

추가로 여러 개의 java 버전을 자주 변경해야 하는 경우 위와 같이 버전별 변수를 미리 저장해 놓고 'JAVA_HOME' 변수에 대한 값만 사용할 수도 있습니다.

 

 

// 'zsh' 쉘을 사용하고 있는 경우 
source ~/.zshrc

// 'bash' 쉘을 사용하고 있는 경우
source ~/.bash_profile

 

마지막으로 해당 명령어를 통해 변경 사항을 반영시켜 줍니다.

 

이후 'java -version' 명령어를 통해 자바 버전이 설정한 것으로 변경된 것을 확인할 수 있습니다.