Linux java PATH 확인 - Linux java PATH hwag-in

# alternatives --config java

2 개의 프로그램이 'java'를 제공합니다.

  선택    명령
-----------------------------------------------
*+ 1           /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
   2           /usr/lib/jvm/jre-1.5.0-gcj/bin/java

현재 선택[+]을 유지하려면 엔터키를 누르고, 아니면 선택 번호를 입력하십시오:

위에 명령에 경로가 자바 설치 경로

# java -version
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.1) (rhel-1.45.1.11.1.el6-i386)
OpenJDK Client VM (build 20.0-b12, mixed mode)

1. 설치                                           

1) 설치 유무 확인

우선 기존에 java가 설치 되어있는지 확인을 합니다.

설치가 안되어있다면 아래와 같이 not found 라는 응답이 보이실테고

Linux java PATH 확인 - Linux java PATH hwag-in

설치가 되었다면 설치된 자바 버전이 보이실겁니다.

Linux java PATH 확인 - Linux java PATH hwag-in

2) 설치 가능한 버전 확인

우선 설치가 안된 상황이다라는 전제하에

우리가 설치할수 있는 자바 버전이 어떤것들이 있는지 먼저 리스트를 볼수있습니다.

Ubuntu

Linux java PATH 확인 - Linux java PATH hwag-in

openjdk-11-jdk를 설치 하시면 headless, jre 모두 같이 설치가 되기 때문에

openjdk-11-jdk만 설치해주시면 됩니다.

CentOS

3) 설치

Ubuntu

$apt install openjdk-11-jdk

CentOS

$yum install java-11-openjdk.x86_64

4) 설치 확인

정상적으로 설치 된 버전이 뜨는지와 java, javac의 버전이 일치하는지를 봐주시면 됩니다.

(아래 1.8.0버전이 설치 된 참조이미지입니다, 위에서는 11버전을 설치했는데 왜 아래 이미지는 1.8.0 버전이지? 라고 혼동이 오시는분도 계실까봐 설명 드려요)

Linux java PATH 확인 - Linux java PATH hwag-in

5) 환경 변수 설정

java는 JDK에 포함된 javac로 컴파일을 하기 때문에 javac의 위치를 확인해서 환경변수를 setup 해줍니다.

일반적으로 /usr/bin/javac에 위치해 있습니다.

이제 javac의 심볼릭 링크를 찾아줍니다.

$readlink -f /usr/bin/javac

/usr/lib/jvm/java-*-openjdk-*/bin/javac 와 같이 path가 나올텐데

JAVA_HOME에는 "/usr/lib/jvm/java-*-openjdk-*/" 까지의 path로 설정해주면 됩니다.

/etc/profile에 환경변수를 등록하는것은 서버에 접속 가능한 모든 계정에 공통적으로 적용된다는 의미입니다.

위에서 찾은 path를 입력해줍니다.

export JAVA_HOME=/usr/lib/jvm/java-*-openjdk-*/

스크립트 파일을 바로 적용하기 위해서 하기 명령어를 수행해주세요

source /etc/profile

echo명령어를 통해 방금 설정한 JAVA_HOME이 정상적으로 나오는지 확인해보세요

6) Tip


이미 JAVA_HOME이 설정되어 있는데 도무지 어디있는지 알수가 없다 하는 경우에는 하기에서 확인해보세요

/etc/profile, ~/.profile, /etc/bashrc, ~/.bashrc


2. 버전 변경                                           

Linux에서 openjdk를 설치하고 나면 alternatives도 함께 설치가 되는데

주 사용 자바 버전을 변경해주는 아주 간편한 명령어 입니다!

해당 명령어는 root 계정으로만 수행이 가능합니다.

$update-alternatives --config java
$update-alternatives --config javac

Linux java PATH 확인 - Linux java PATH hwag-in

위와 같이 설치 된 java list가 보이면 원하는 버전의 숫자를 눌러주신 다음 엔터를 입력하시면 됩니다.

(java, javac 둘다 모두 변경해야 합니다!)


3. JAVA 삭제                                           

리스트가 출력되면 삭제하고자 하는 자바 버전 확인후 삭제

$yum remove [java package name]

티스토리 뷰

해당 테스트는 Cent OS7의 open-jdk 1.8을 기준으로 진행했습니다.

# which java
/usr/bin/java

# ll /usr/bin/java
lrwxrwxrwx. 1 root root 22 Apr 25 22:19 /usr/bin/java -> /etc/alternatives/java

# ll /etc/alternatives/java
lrwxrwxrwx. 1 root root 73 Apr 25 22:19 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64/jre/bin/java

# cd /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64/
# ls
ASSEMBLY_EXCEPTION  bin  include  jre  lib  LICENSE  tapset  THIRD_PARTY_README