temurin JDK가 뭐야?
Oracle이 Java 소유권을 가지면서 Java 유료화에 대한 논란이 있었다.
(Java 유료화에 대한 논란은 구글링 해보면 알수 있다.)
논란과 함께 Open JDK 사용률이 증가하게 되었고 그러면서 등장된 여러 배포버전(구현체)이 존재하게 되었다.
(배급사별 배포버전으로 Azul Zulu, AdoptOpenJDK, Amazon Corretto 등이 흔히들 쓰이는 것 같다.)
필자는 위 배포버전에서 AdoptOpenJDK를 선택했다.
(AdoptOpenJDK는 여러 기업의 후원을 받아 개발자들이 운영하는 커뮤니티로 추후에도 유료화가 되지 않고 사용할 수 있을 거 같았다.)
그리고 해당 AdoptOpenJDK는 Eclipse에서 Adoptium 프로젝트를 진행함에 따라 Deprecated되었고 새로운 이름으로 pre-built 된 open jdk를 제공한다. 그 이름이 바로 temurin 이다.
Mac에서 JDK 설치하는 방법?
Mac OS에서 Java를 설치하는 방법은 다양하다.
Homebrew를 통해 패키지를 직접 설치를 하거나, SDKMAN 을 통해 설치를 할 수 있다.
하지만 이 둘의 설치 방법에는 차이가 있다.
Homebrew를 통해 설치하는 경우 /Library/Java/JavaVirtualMachines 경로에 설치가 되고 여러 자바 버전을 사용하기 까다롭다.
SDKMAN을 통해 설치하는 경우 /home/{User}/.sdkman 경로에 설치가 되고 여러 자바버전을 사용하기에 용이하다.
회사에서 여러 프로젝트를 개발하다 보면 Java 버전이 다를때가 있는데 이때문에 SDKMAN을 선택했었다.
(.sdkman 폴더를 삭제를 통해 간단하게 제거할 수 있다는 장점도!)
그러나 JVM기반으로 수행되는 프로그램을 사용하려 하자 자바를 인식하지 못했다.
(아마도 JAVA_HOME을 바라보지 않는 것 같다)
필자가 사용한 프로그램은 APM 툴인 Scouter였다.
그래서 결국 SDKMAN을 사용을 멈추게 되었고, Mac에서의 기본 경로에 설치가 되면서 여러자바 버전을 사용하기에 용이한 방법이 없을까 찾아보았다. 그래서 알게 된 것이 jenv였다.
jenv로 temurin 설치하기
1. Homebrew 설치하기
mac에서 jenv를 사용하기 위해서는 기본적으로 brew가 필요하다. (이미 설치된 사람은 패스!!)
/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
2. jenv 설치하기
아래 명령어를 통해 jenv를 설치하자.
brew install jenv
그리고 `~/.bashrc` 또는 `~/.bash_profile` 최근 Mac을 사용한다면 `~/.zsh`에 아래 내용을 추가하자.
# jenv config
export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"
3. cask 설치하기
cask는 brew를 통해 프로그램을 설치할 수 있도록 도와주는 일종의 유틸이라고 한다. 아래 명령어를 통해 cask를 설치하자.
brew install cask
4. temurin jdk 설치하기
아래 명령어를 통해 설치해 보자.
# 버전별 설치를 위해 먼저 실행
brew tap homebrew/cask-versions
# 특정 버전 설치
brew install --cask temurin8
brew install —cask temurin11
brew install --cask temurin17
# 최신 버전만 설치하고 싶다면
brew install --cask temurin
5. jenv에 등록하기
아래 명령어를 통해 설치된 JDK를 등록해보자
# JDK 경로를 jenv에 등록
jenv add /Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home
jenv add /Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
jenv add /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
# jenv로 컨트롤 가능한 버전 확인
jenv versions
# 위 명령어를 통해 확인한 자바 버전중에 하나를 default로 설정할 수 있다
jenv global {version}
# maven을 사용한다면 아래 명령어를 통해 maven 의 java 버전이 jenv 설정대로 변경되도록 할 수 있다.
jenv enable-plugin maven
jenv enable-plugin export
6. jenv 삭제하기
아래 명령어를 통해 삭제할 수 있다.
brew uninstall jenv
rm -rf ~/.jenv
7. 그 외 참고할 만한 명령어
# 최신 temurin 버전 확인하기
brew info —cask temurin
# Mac에 설치된 자바 버전 모두 보기
/usr/libexec/java_home -V
'프로그래밍 > Java' 카테고리의 다른 글
VO와 DTO 는 다르게 부르는 같은 말? (0) | 2022.01.27 |
---|---|
Constant Interface (0) | 2022.01.20 |
junit4 vs. junit5 어노테이션 비교(기본) (0) | 2021.01.10 |
JAVA log4j와 log4j2 외부경로 설정 (0) | 2021.01.07 |
Java 8기준 stream collect에서 unmodifiable객체 만들기 (0) | 2021.01.06 |