Fedora에 이전 버전의 OpenJDK 설치하기(Install OpenJDK 7 in Fedora 23)

프로그래밍 팁 2015.12.22 18:11

 Ubuntu의 경우 각 버전의 OpenJDK를 apt-get를 통해 제공하고 있습니다만 Fedora의 경우 최신 버전의 OpenJDK만이 dnf를 통해 제공되고 있습니다. AOSP(안드로이드 오픈소스 프로젝트)에서 안드로이드 운영체제를 컴파일하기 위해서는 특정 버전의 OpenJDK를 사용하여야 하는데 이게 아무리 최신 버전의 안드로이드 운영체제라 하더라도 항상 최신버전의 OpenJDK를 지원하지 않는 경우가 있습니다. 2015년 후반기에 등장한 최신 버전인 Marshmellow의 경우도 OpenJDK 1.7.0 버전을 요구하고 있기 때문에 현재 최신 버전인 OpenJDK 1.8.0에서는 컴파일을 진행할 수 없습니다.


 이번 포스팅에서는 2015년 후반기 최신 운영체제인 Fedora 23에 OpenJDK 1.7.0 버전을 설치해보도록 하겠습니다.


------------------------------------------------------------------------------------------------------------------------

 2015년 12월 현재 최신버전인 Fedora 23에는 기본적으로 최신버전인 1.8.0이 설치되어 있는 것을 확인할 수 있습니다.


$ java -version



Fedora 23 부터는 기존부터 사용되었던 설치 관리자인 yum이 새로운 설치 관리자인 dnf로 변경되었습니다. 이 과정 때문이지는 모르겠습니다만 Fedora 23에서는 OpenJDK 1.8.0 이전의 버전들은 dnf를 통해 제공을 하고 있지 않습니다. 우리는 이제 이전 버전의 OpenJDK를 직접 찾아 설치해보도록 하겠습니다. rpm 패키지들을 검색해주는 사이트인 rpmfind에 접속합니다.


https://www.rpmfind.net



 사이트에 접속한 후 검색창에 다음 단어들을 검색해줍니다.


java-1.7.0-openjdk-headless

java-1.7.0-openjdk

java-1.7.0-openjdk-devel


 위 단어를 검핵해보면 아래와 같이 해당 rpm의 최신버전이 가장 윗부분에 노출됩니다. 그 중 자신의 운영체제에 맞는 패키지를 선택해 다운로드 받습니다. 본 포스팅에서는 64비트의 Fedora를 사용중이므로 x86-64 버전을 다운로드 받았습니다.



 다운로드 받은 패키지의 설정에 따라 의존성이 달라질 수 있으며 이에 해당하는 부분들에 대한 설치가 진행되어야 합니다. 이 포스팅에서 진행하는 대로 설치하시는 것을 원하시는 분은 아래 rpm을 다운로드 해주시길 바랍니다.


java-1.7.0-openjdk-headless

ftp://195.220.108.108/linux/centos/7.2.1511/os/x86_64/Packages/java-1.7.0-openjdk-headless-1.7.0.91-2.6.2.3.el7.x86_64.rpm


java-1.7.0-openjdk

ftp://195.220.108.108/linux/centos/7.2.1511/os/x86_64/Packages/java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64.rpm


java-1.7.0-openjdk-devel

ftp://195.220.108.108/linux/centos/7.2.1511/os/x86_64/Packages/java-1.7.0-openjdk-devel-1.7.0.91-2.6.2.3.el7.x86_64.rpm


 위 과정까지 진행하셨다면 패키지를 설치하기 전 의존성 충돌을 피하기 위해 아래의 패키지를 설치해줍니다.


# dnf install xorg-x11-fonts-Type1 libpng15


 만약 위와 같은 과정을 진행하지 않을 경우 아래와 같이 Failed dependencies Error가 발생하면서 의존성에 문제가 발생하는 경우가 있습니다. 이 경우 해당 dependency에 대해 설치를 해주어야 하는데 이는 위에서 알려드린 사이트 rpmfind에서 검색하면 관련 설치 패키지를 확인하실 수 있습니다.




 다음으로 다운로드 받은 패키지른 다음과 같이 순서대로 설치해줍니다.


# rpm -i --force --nodeps java-1.7.0-openjdk-headless-1.7.0.91-2.6.2.3.el7.x86_64.rpm

# rpm -i --force --nodeps java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64.rpm

# rpm -i java-1.7.0-openjdk-devel-1.7.0.91-2.6.2.3.el7.x86_64.rpm


 아래의 명령어를 입력하시면 설치된 OpenJDK가 1.7.0 으로 변경된 것을 확인하실 수 있습니다.

$ java -version