본문으로 바로가기

[Linux] CentOS7 yum으로 Java(jdk) 설치 - yum

category OS/Linux 2021. 8. 1. 15:03

목차

    0. 설치 전 확인

    - 이 게시물은 Java(jdk)가 설치되어 있지 않다는 가정하에 진행합니다. 이미 Java가 설치되어 있다면 제거 후 설치를 해줍니다. 

    (CentOS 7을 설치하면 기본적으로 Java(jdk)가 설치되어 있는 경우가 있습니다.)

     

    - 다음과 같은 명령어를 이용해 Java(jdk)가 설치되어 있는지, 설치된 버전을 확인합니다.

    자바 버전 확인
    # java -version

    설치 되어 있는 자바 버전 확인
    # yum list installed | grep java

     

    - 다음 명령어를 이용해 위에서 조회한 기본으로 설치되어 있는 Java(jdk)를 제거해 줍니다.

    이미 설치 되어 있는 버전을 제거 합니다.
    # yum remove -y java-1.8.0-openjdk.x86_64
    # yum remove -y java-1.8.0-openjdk-headless.x86_64

     

    - 제거가 성공한 경우 다음과 같이 자바 버전을 확인해도 아무것도 나오지 않습니다.

    자바 버전 확인
    # java -version

     


    1. JDK 설치

    1-1. 설치할 수 있는 JDK 목록 확인

    - 다음 명령어를 이용해 현재 설치할 수 있는 Java(jdk) 목록을 확인합니다.

    # yum list java*jdk-devel

    1-2. 설치

    - 다음 명령어를 이용해 원하는 버전의 Java(jdk)를 설치합니다. 

    (필자는 java-1.8.0-openjdk-devel.x86_64를 설치했습니다.)

    yum install -y 원하는 버전
    # yum install -y java-1.8.0-openjdk-devel.x86_64

    1-3. 설치 확인

    - 다음 명령어를 이용해 Java(jdk)가 잘 설치되었는지 확인합니다.

    자바 버전 확인
    # java -version
    openjdk version "1.8.0_292"
    OpenJDK Runtime Environment (build 1.8.0_292-b10)
    OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode)
    
    # javac -version
    javac 1.8.0_292

     


    2.  환경 변수 설정

    2.1. 설치 된 Java(jdk) 경로 확인

    - 환경 변수를 설정하려면 우선 Java(jdk) 경로를 확인해야 합니다. 다음 명령어를 이용해 경로를 확인합니다.

    설치된 자바의 경로를 확인
    # which java
    /bin/java
    
    심볼릭 링크 확인
    # readlink -f /usr/bin/java
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64/jre/bin/java

    2.2 환경 변수 등록

    - 위에서 구한 경로를 이용해 JAVA_HOME 환경변수를 등록합니다. 

     

    - /etc/profile 를 vi툴을 이용해 파일을 열어 줍니다.

    # vi /etc/profile

     

    - Shift + G를 눌러 해당 파일의 가장 마지막 줄로 이동해 아래 내용을 추가한 뒤 저장합니다.

    (위에서 조회한 경로를 넣어 줍니다.)

    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64

     

    - 아래의 명령어를 이용해 수정한 파일을 저장해 줍니다.

    # source /etc/profile

    2.3 등록된 환경 변수 확인

    - 아래처럼 환경 변수가 잘 적용되었는지 확인해봅니다.

    # echo $JAVA_HOME
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64

     

    - 현재 CentOS7에 설정되어 있는 모든 환경 변수를 확인하고 싶으면 다음 명령어를 사용합니다.

    # export
    declare -x HISTCONTROL="ignoredups"
    declare -x HISTSIZE="1000"
    declare -x HOME="/root"
    declare -x HOSTNAME="localhost.localdomain"
    declare -x JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64"
    declare -x LANG="ko_KR.UTF-8"
    declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
    declare -x LOGNAME="root"
    declare -x MAIL="/var/spool/mail/root"
    declare -x OLDPWD
    declare -x PWD="/root"
    declare -x SHELL="/bin/bash"
    declare -x SHLVL="1"
    declare -x TERM="xterm"
    declare -x USER="root"
    declare -x XDG_RUNTIME_DIR="/run/user/0"
    declare -x XDG_SESSION_ID="1"