Ubuntu에서 Open JDK(Java Development Kit) 17을 설치, 삭제하는 방법에 대해서 알아보겠습니다.
저는 Ubuntu 20.04에서 설치하였는데, 22.04 버전도 크게 차이는 없습니다.
1. 터미널 명령어로 OpenJDK 17 설치
apt 명령어로 Repository와 패키지를 업데이트합니다. 최신 버전으로 업데이트하여 잠재적인 버전 충돌 문제를 예방할 수 있습니다.
$ sudo apt update && sudo apt upgrade
다음 명령어로 OpenJDK 17을 설치합니다.
$ sudo apt install openjdk-17-jdk
설치가 완료되면, 아래 명령어로 현재 자바 버전이 17로 설정되어있는지 확인할 수 있습니다.
$ java --version
openjdk 17.0.6 2023-01-17
OpenJDK Runtime Environment (build 17.0.6+10-Ubuntu-0ubuntu120.04.1)
OpenJDK 64-Bit Server VM (build 17.0.6+10-Ubuntu-0ubuntu120.04.1, mixed mode, sharing)
2. 설치 파일을 다운로드하여 직접 설치
apt가 동작안하거나, 네트워크 문제로 apt로 설치가 어려운 경우 직접 설치 파일 다운로드하여 설치할 수 있습니다.
JDK 다운로드 페이지에서 JDK 17 버전 파일을 다운로드합니다.
또는, 아래와 같이 wget 명령어로 openjdk-17.0.2
버전을 다운로드 받을 수 있습니다.
$ wget https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz
gz 파일을 다운로드 받으면, 아래 명령어로 압축을 풀어줍니다.
$ tar -xvf openjdk-17.*
압축을 풀고 디렉토리를 확인하면 아래와 같이 보입니다.
$ ls
jdk-17.0.2 openjdk-17.0.2_linux-x64_bin.tar.gz
여기서 jdk-17.0.2
디렉토리를 /usr/local/openjdk-17
경로로 복사합니다. 복사된 경로에 자바 파일들이 보입니다.
$ sudo cp -r jdk-17.0.2/ /usr/local/openjdk-17
$ ls /usr/local/openjdk-17
bin conf include jmods legal lib release
vim ~/.bashrc
명령어 등으로, .bashrc
파일에 다음과 같이 설정하여 Java Path를 추가합니다.
export JAVA_HOME=/usr/local/openjdk-17
export PATH=$JAVA_HOME/bin:$PATH
터미널을 새로 실행하거나, 아래 명령어를 입력하여 현재 터미널에 변경된 PATH를 적용합니다.
$ source ~/.bashrc
이제 자바 버전을 확인하면 설치된 것을 확인할 수 있습니다.
$ java --version
openjdk 17.0.6 2023-01-17
OpenJDK Runtime Environment (build 17.0.6+10-Ubuntu-0ubuntu120.04.1)
OpenJDK 64-Bit Server VM (build 17.0.6+10-Ubuntu-0ubuntu120.04.1, mixed mode, sharing)
3. OpenJDK 삭제
다음 명령어로 설치된 OpenJDK를 삭제할 수 있습니다.
$ sudo apt-get purge openjdk*
또는, 아래와 같이 특정 JDK 버전만 삭제할 수 있습니다.
$ sudo apt remove openjdk-17-jre openjdk-17-jdk --purge
삭제 후 Java 버전을 확인하면 삭제된 것을 볼 수 있습니다.
$ java --version
bash: /usr/bin/java: No such file or directory
4. Java 버전 관리 (Alternatives)
.bashrc
의 PATH
에 Java 경로를 추가하여 관리해도 되지만, 저는 Alternatives라는 툴을 이용하여 다양한 자바 버전을 비교적 간편하게 관리할 수 있습니다.
간단히 동작 원리를 소개하면, 시스템은 특정 경로를 자바 설치 경로로 인식하고 있고, Alternatives에서 버전을 변경하면 이 경로를 특정 버전의 설치 파일로 연결하고 있습니다.
Alternatives를 잘 모르시면 Ubuntu에서 Python 버전을 변경하는 방법을 참고하세요.
Alternatives의 원리와 사용하는 방법에 대해서 간단히 정리되어있습니다.
저는 다음과 같이 /usr/bin/java
를 alternative로 java 경로로 설정하였습니다.
$ sudo update-alternatives --config java
There are 4 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-9-openjdk-amd64/bin/java 1101 auto mode
1 /usr/lib/jvm/java-9-openjdk-amd64/bin/java 1101 manual mode
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
다음 명령어로 OpenJDK 11 버전을 Alternatives에 추가할 수 있습니다.
$ sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1
다음 명령어로 OpenJDK 11이 Alternatives에 등록된 것을 확인할 수 있고, 여기서 변경하고 싶은 자바 버전을 선택할 수 있습니다.
js@js:~/Desktop$ sudo update-alternatives --config java
There are 4 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1 auto mode
1 /usr/lib/jvm/java-9-openjdk-amd64/bin/java 1101 manual mode
3 /usr/lib/jvm/java-9-openjdk-amd64/bin/java 1101 manual mode
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
저는 OpenJDK 11을 선택하였는데요, 자바 버전을 확인해보면 11 버전으로 변경되었습니다. alternative가 설치 위치를 변경하였기 때문입니다.
$ java --version
openjdk 11.0.9.1 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04)
OpenJDK 64-Bit Server VM (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)
Related Posts
- Ubuntu/Linux - 특정 이름이 들어간 파일 모두 찾고 삭제하기
- Ubuntu/Linux - 특정 이름이 포함된 프로세스 모두 종료
- Ubuntu/Linux - 사용자 계정 이름 확인 (id, whoami)
- Ubuntu/Linux - E: unable to locate package 에러 해결
- Ubuntu 22.04/20.04 - Yarn 설치 방법
- Linux/Ubuntu - grep 명령어로 문자열 검색
- Linux/Ubuntu - 터미널에서 seq로 명령어 N회 반복
- Linux/Ubuntu - wc 명령어로 Line(줄) 개수 세기
- bash: pip: command not found 문제 해결 (Linux/Ubuntu)
- Ubuntu 22.04 - Swap 메모리 늘리기
- Linux - 파일이 수정된 날짜/시간 확인 방법
- Linux - 파일, 디렉토리 삭제 명령어(rm -rf, rmdir)
- 우분투 22.04 - deb 파일 설치하기
- Ubuntu 20.04 - OpenJDK 11 설치, 삭제
- Linux - ps 명령어로 실행 중인 프로세스(PID) 확인
- Ubuntu 20.04 - SSH 설치와 접속 방법
- Ubuntu에서 PPA 저장소 추가, 제거 방법
- Ubuntu 22.04 - Brave 브라우저 설치
- Ubuntu 22.04 - 프로스트와이어(FrostWire) 설치
- Ubuntu 22.04 - Remmina 설치 방법
- Ubuntu 22.04 - Rust 설치하기
- Ubuntu 22.04 - 텔레그램 설치하기
- Ubuntu - Deluge 토렌트 클라이언트 설치
- Ubuntu JDK 17 (OpenJDK) 설치, 삭제
- Ubuntu 20.04 스팀(Steam) 설치 방법
- Ubuntu에서 draw.io 설치하는 방법
- 우분투에 VMware 설치하기
- [Ubuntu] VMware에서 Windows 11 설치
- Vi/Vim에서 1줄 또는 여러줄 삭제 방법
- Vi/Vim에서 라인 번호 표시하 기
- 우분투에서 rar 압축, 압축 풀기
- Ubuntu에서 구글 드라이브 사용하기 (로컬 폴더에 마운트)
- [Ubuntu] apt-cache search, 설치 가능한 패키지 검색
- Ubuntu - DNS 캐시 삭제 방법
- Ubuntu에서 사용할 수 있는 Text Editor 소개