macOS 에 java 설치하기 / 여러 버전 설치하기
반응형

macOS에 설치할 수 있는 java는 여러 종류가 있지만 보통은 brew 로 OpenJDK를 사용한다.

그리고 인터넷을 찾아 보면 AdoptOpenJDK 로 안내된 문서가 많은데 문제는 이 프로젝트가 21년 8월 이후로 deprecated 되었고 

Eclipse temurin 으로 변경되었다.

 

그래서 새로 설치해 줘야 하는데...

  1. 기존 AdoptOpenJDK 를 삭제한다. 모조리...
  2. temurin 으로 설치한다.
  3. 각 버전을 활성화할 수 있는 alias 를 추가한다.

기존 버전 제거는 아래와 같이 한다.

# 이전에 사용하던 jdk 제거 - 아래는 예제로 설치된 jdk 목록은 brew list 명령어로 확인하면 된다.
$ brew uninstall adoptopenjdk8
$ brew uninstall adoptopenjdk11
$ brew uninstall adoptopenjdk16

# tap 제거
$ brew untap AdoptOpenJDK/openjdk

 

신규 버전을 설치한다. 참고로 java LTS는 8, 11, 17 이다.

# 새로운 cask 설치. LTS라면 꼭 버전을 지정해 설치해야 한다.
$ brew tap homebrew/cask-versions
$ brew install --cask temurin8
$ brew install --cask temurin11
$ brew install --cask temurin17

# 아래와 같이 버전 지정없이 설치하면 마지막 버전이 설치된다. 현재는 19 버전이 설치된다.
$ brew install --cask temurin

 

홈디렉터리의 .bash_profile 에 아래 내용을 추가해 두면 명령어로 언제든지 java 버전을 변경할 수 있다.

#.bash_profile

export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)  #이렇게 해야 1.8 위치를 가져올 수 있다.
export JAVA_11_HOME=$(/usr/libexec/java_home -v11)
export JAVA_17_HOME=$(/usr/libexec/java_home -v17)
alias setjv8='export JAVA_HOME=$JAVA_8_HOME'
alias setjv11='export JAVA_HOME=$JAVA_11_HOME'
alias setjv17='export JAVA_HOME=$JAVA_17_HOME'

setjv8 # 이 구문을 안주면 맨 마지막에 설치한 17버전이 터미널 열 때 기본으로 된다.

 

java_home 전체 목록은 아래와 같다.

$ /usr/libexec/java_home -V  #대문자 V를 사용.
Matching Java Virtual Machines (3):
    17.0.6 (x86_64) "Eclipse Adoptium" - "OpenJDK 17.0.6" /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
    11.0.18 (x86_64) "Eclipse Adoptium" - "OpenJDK 11.0.18" /Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
    1.8.0_362 (x86_64) "Eclipse Temurin" - "Eclipse Temurin 8" /Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
반응형