본문 바로가기
Java

Java : jdk-version() { 여러 jdk 버전 설치; }

by yaans 2024. 6. 12.

 

MSA 환경에서 개발을 하다보니 최대 많게는 Java 8, 11, 17, 21 버전의 프로젝트를 한꺼번에 사용한 적이 있다.

Mac jenv를 활용하면 특정 경로의 JAVA_HOME을 쉽게 변경할 수 있었지만,

Windows 운영체제에서는 어떤 방식으로 할 수 있을지 궁금해졌다.

 

Window에서도 다양한 jdk 버전을 터미널에서 변환할 수 있는 방법을 구글링하고 직접 테스트 해보았다

 

1. jdk 다운로드

 

샘플로 설치해볼 graalvm jdk 21, 17 버전 

https://github.com/graalvm/graalvm-ce-builds/releases/tag/jdk-21.0.2

https://github.com/graalvm/graalvm-ce-builds/releases/tag/jdk-17.0.8

 

각 버전에서 Windows (amd64) download 

 

 

2. 로컬 디스크 C -> Program Files에 Java 폴더를 생성하고 하단에 jdk 압축 풀기

 

 

 

jdk를 사용할 수 있도록 시스템 환경 변수에 jdk 경로들을 추가해야 한다

 

3. 환경 변수 추가

 

(UI 사용 : 해당 포스팅에선 이 방식을 쓰지 않는다)

환경 변수를 추가하기 위해서 아래와 같은 식으로 UI 접근도 되겠지만... 귀찮다

 

 

(터미널 사용)

cmd를 관리자 권한으로 실행하자

 

기본 자바 버전은 21버전으로 설정하고 싶다

JAVA_HOME의 값으로는 21 버전 jdk의 경로를 붙여주었다

# setx /M {시스템-변수명} "{경로}"
setx /M JAVA_HOME "C:\Program Files\Java\graalvm-community-openjdk-21.0.2+13.1"
setx /M PATH "%JAVA_HOME%\bin;%PATH%"

 

 

PATH에는 17, 21 버전 둘다 추가해주자

setx /M PATH "C:\Program Files\Java\graalvm-community-openjdk-21.0.2+13.1\bin;%PATH%"
setx /M PATH "C:\Program Files\Java\graalvm-community-openjdk-17.0.8+7.1\bin;%PATH%"

 

값을 저장한 뒤 cmd를 재시작한다

 

적용이 잘 됐는지 확인

 echo %PATH%
 echo %JAVA_HOME%

경로가 잘 출력된다

 

(UI 확인)

고급 시스템 설정 보기에서도 역시 추가된 변수를 확인할 수 있다

echo의 내용이 똑같이 담겨있다

 

JAVA_HOME 변경 스크립트

 

scripts 경로 생성

해당 스크립트에서 JAVA_HOME을 변경하는 bat 파일을 추가해놓을 예정

setx /M PATH "C:\Program Files\Java\scripts;%PATH%"

 

@echo off
set JAVA_HOME={jdk경로}
set Path=%JAVA_HOME%\bin;%Path%
echo Java [버전] activated.

 

 

 

cmd 에 버전명을 치는 것으로 버전 전환!

적용 완료

 

 

 

 

 

 

 

Ref

https://ichi.pro/ko/windowseseo-yeoleo-jdk-java-gan-e-jeonhwanhaneun-bangbeob-188808991195692

댓글