jenv
다양한 버전의 Java를 간편하게 관리하고 Java 프로젝트별로 환경을 구성할 수 있는 플러그인 기반의 Java 버전 관리 도구다. 개발자는 시스템 전체 또는 프로젝트별로 Java 버전을 선택하고 스위치하는 일이 간편해지며, 다양한 Java 애플리케이션 개발 환경을 관리하는 데 도움을 받을 수 있다.
brew install jenv
.zshrc
파일에 프롬프트를 추가했지만, 각 사용자별로 적당한 rc 파일에 추가하면 된다.echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc
jenv versions
system
* 11.0 (set by /Users/user/.jenv/version)
11.0.15
17.0
17.0.3
18.0
18.0.1
jenv versions
에서 인식되지 않은 자바 버전이 있을 경우 수동으로 추가jenv add /Users/user/Library/Java/JavaVirtualMachines/temurin-17.0.3/Contents/Home/
jenv global 11.0 # 쉘 기본 자바 버전을 11 로 변경
jenv local 17.0 # 현재 세션의 자바 버전을 17 로 변경
jenv local --unset # 현재 세션에 설정된 로컬 자바 버전을 해제 (글로벌 자바 버전으로 변경)
JAVA_HOME
환경 변수의 자바 런타임을 사용한다. jenv 로 자바 버전 스위칭을 했지만 maven 에서 사용하는 자바 변경 버전이 바뀌지 않는 경우 아래 트러블 슈팅을 참고이미 Java가 설치되어 있고, java 명령어 사용시 /usr/bin/java
와 같이 설정되어 있어 jenv 로 Java 버전 스위칭이 되지 않는 경우
jenv rehash
jenv 사용하고 있지만 JAVA_HOME
환경 변수 변경이 제대로 되지 않는 경우
jenv enable-plugin export