우분투에서 기본으로 제공해주는 OpenJDK 가 있지만, OracleJDK가 필요할 때가 있다.

이전에는 우분투에서 OracleJDK Repository가 기본으로 제공되어 apt-get으로 쉽게 설치가 가능하였지만, 이제는 더이상 지원하지 않기때문에 다른 방법을 찾아야 한다. 몇군데 찾아보다 보았더니 OracleJDK 설치를 어렵지 않게 할 수 있었다

오늘은 쉽고 빠른 OracleJDK설치에 대해 설명해 보겠다.


PPA등록으로 빠른 설치하기.

1. 새로운 repository PPA를 추가

$ sudo add-apt-repository ppa:webupd8team/java

2. repository index 업데이트

$ sudo apt-get update

3. JDK설치

- Java 8

$ sudo apt-get install oracle-java8-installer

- Java 7

$ sudo apt-get install oracle-java7-installer

4. 설치된 Java version 확인

$ java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)


수동 설치하기

1. OS 및 커널 bit 확인

$ file /sbin/init
/sbin/init: ELF 64-bit LSB  shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=7a4c688d009fc1f06ffc692f5f42ab09e68582b2, stripped

2. Java 정보 확인

$ java -version
java version "1.7.0_79"
OpenJDK Runtime Environment (IcedTea 2.5.5) (7u79-2.5.5-0ubuntu0.14.04.2)
OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)

3. 다른 Vendor와 충돌 방지를 위하여 OpenJDK 삭제

$ apt-get purge openjdk*

4. OracleJDK 바이너리를 저장할 폴더 생성

$ sudo mkdir -p /usr/local/java

5. OracleJDK 바이너리 다운로드

OracleJDK 7 다운로드

OracleJDK 8 다운로드

6. 다운로드한 압축파일 풀기

- Java 8

$ cp -r ~/Download/jdk-8u45-linux-x64.tar.gz /usr/local/java/
$ cd /user/local/java
sudo tar xvzf jdk-8u45-linux-x64.tar.gz

- Java 7

sudo cp -r ~/Download/jdk-7u79-linux-x64.tar.gz /usr/local/java/
$ cd /user/local/java
sudo tar xvzf jdk-7u79-linux-x64.tar.gz

7. 시스템 PATH 파일 수정 후 저장

- Java 7

$ sudo vi /etc/profile

JAVA_HOME=/usr/local/java/jdk1.7.0_79
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

- Java 8

$ sudo vi /etc/profile

JAVA_HOME=/usr/local/java/jdk1.8.0_20
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

8. /etc/profile 리로드

$ sudo source /etc/profile

9. 시스템에 Oracle Java 사용 알리기

시스템에 Oracle Java JRE 사용 알리기

$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.7.0_79/bin/java" 1
update-alternatives: using /usr/local/java/jdk1.7.0_79/bin/java to provide /usr/bin/java (java) in 자동 모드

시스템에 Oracle Java JDK 사용 알리기

$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.7.0_79/bin/javac" 1
update-alternatives: using /usr/local/java/jdk1.7.0_79/bin/javac to provide /usr/bin/javac (javac) in 자동 모드

시스템에 Oracle Java Web 사용 알리기

$ sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.7.0_79/bin/javaws" 1
update-alternatives: using /usr/local/java/jdk1.7.0_79/bin/javaws to provide /usr/bin/javaws (javaws) in 자동 모드

10. OracleJDK Default로 지정하기

$ sudo update-alternatives --set java /usr/local/java/jdk1.7.0_79/bin/java
$ sudo update-alternatives --set javac /usr/local/java/jdk1.7.0_79/bin/javac
$ sudo update-alternatives --set javaws /usr/local/java/jdk1.7.0_79/bin/javaws

11. Java 버전 확인하기 

$ java -version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)


Java 관리하기

여러 버전의 Java가 설치 되어있는 경우, Default로 사용할 버전을 선택하여 사용할 수 있다.

$ sudo update-alternatives --config java

대체 항목 java에 대해 (/usr/bin/java 제공) 2개 선택이 있습니다.
  선택       경로                                        우선순위      상태
--------------------------------------------------------------------------

* 0   /usr/lib/jvm/java-7-oracle/jre/bin/java           1073      자동 모드
  1   /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java    1071      수동 모드
  2   /usr/lib/jvm/java-7-oracle/jre/bin/java           1073      수동 모드

기본 사항[*]을 사용하려면 엔터, 다른 것을 사용하려면 번호를 입력하십시오: 


이제 우분투에서 OracleJDK를 사용할 수 있게 되었다. 

오늘의 포스팅은 여기서 끝~

참고 자료 : 

https://www.digitalocean.com/community/tutorials/how-to-install-java-on-ubuntu-with-apt-get

http://www.wikihow.com/Install-Oracle-Java-JDK-on-Ubuntu-Linux

Posted by jjangAh