JAVA 16버전을 사용하는 서버에서 안드로이드 빌드를 하는걸 구현하는 도중 "jlink executable /usr/lib/jvm/java-16-openjdk-amd64/bin/jlink does not exist."라는 오류가 발생했었는데, java-11-openjdk 아래에만 jlink가 설치되어 있었다. 그래서 16에서 11로 버전을 변경하게되었는데, 방법을 살펴보자.
1-1. 빠르고 쉬운 방법
update-alternatives를 이용하면된다.
$ update-alternatives --config java
대체 항목 java에 대해 (/usr/bin/java 제공) 2개 선택이 있습니다.
선택 경로 우선순? 상태
------------------------------------------------------------
0 /usr/lib/jvm/java-16-openjdk-amd64/bin/java 1611 자동 모드
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 수동 모드
2 /usr/lib/jvm/java-16-openjdk-amd64/bin/java 1611 수동 모드
Press <enter> to keep the current choice[*], or type selection number: 1
원하는 항목에 해당하는 번호를 입력하고 java -version을 치면 바뀌어있는 것을 확인할 수 있다.
1-2. 수동으로 바꾸기
직접 심볼릭 링크를 확인하고 기존의 연결을 끊고 새로 생성하는 방법이다.
# 현재 JAVA 경로를 확인한다.
# 심볼릭 링크로 연결되어있음을 알 수 있는데,
$ ls -al /etc/alternatives/java
lrwxrwxrwx 1 root root 43 7월 24 12:42 /etc/alternatives/java -> /usr/lib/jvm/java-16-openjdk-amd64/bin/java
# 링크를 끊어준다.
$ rm -rf /etc/alternatives/java
# 원하는 JAVA버전으로 새로 링크를 생성한다.
ln -s /usr/lib/jvm/java-11-openjdk-amd64/bin/java /etc/alternatives/java
2. JAVA_HOME 변경
.bashrc 등에서 바뀐 JAVA_HOME 값을 업데이트 해준다.
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
'프로그래밍 > Linux' 카테고리의 다른 글
LXD와 LXC의 차이 (0) | 2022.10.04 |
---|---|
[lxc] 인스턴스 생성 실패 Failed detecting root disk device: No root device could be found 해결방법 (1) | 2022.10.03 |
Linux 날짜 기준으로 오래된 파일 삭제하기 (0) | 2022.07.21 |
2 > &1의 진짜 뜻 (0) | 2022.06.06 |
현재 컴퓨터에서 LISTEN 중인 포트 스캔하기 (0) | 2022.04.05 |