2014-04-22 3 views
2

내 CentOS 6.5 시스템에 jdk7을 설치하려고합니다. 사실, 나는 이미 6 개월 전 이것을 생각했지만 java -version을 입력하면 javac 1.6.0_30을 볼 수 있습니다.CentOS에서 jdk7을 설치하는 방법은 무엇입니까?

나는 체크섬을 확인한 후 jdk-7u25-linux-x64.tar.gz를 다운로드 한 다음 /home/username/java/jdk7u25/jdk1.7.0_25으로 압축을 푼다. 내가 source .bash_profile 다음 java -version 나는 여전히 같은 1.6 버전은 위에서 언급 한 참조를 입력 할 때

... 
export JAVA_PATH=$JAVA_HOME 
export PATH=$PATH:$JAVA_HOME/bin 
... 
export PATH=$PATH:$JRE_HOME/bin 

:

는 그럼 난 포함 내 .bash_profile 파일을 편집했다. 누구든지 다른 일을해야한다는 것을 알고 있습니까?

+1

... 이미 존재하는 경로 다음에 새 Java 경로를 추가하고 있습니다. –

+3

export PATH = $ JRE_HOME/bin : $ PATH –

+1

설치중인 java 이전에 PATH에 또 다른 java가 있습니다. 변경 내보내기 PATH = $ PATH : $ JRE_HOME/bin PATH = $ JRE_HOME/bin : $ PATH – Amit

답변

6

에 대한 대안에만 편집해야 당신의 PATH 자바의 개인 사본을 설치해야합니다. 당신은 그 길을가는 경우에 당신은과 같이, 당신의 PATH의 시작 부분에 자바의 원하는 버전의 bin 디렉토리가 있는지 확인해야합니다

export JAVA_PATH=$JAVA_HOME 
export PATH=$JAVA_HOME/bin:$PATH 
export PATH=$JRE_HOME/bin:$PATH 

그러나이 문제를 처리 할 수있는 더 좋은 방법은 설치하는 것입니다 Java를 사용하고 alternatives 명령을 사용하십시오. 당신은 오픈 JDK에 의해 얻을 수 있다면 당신은 시도 할 수 :

yum install java-1.7.0-openjdk 
yum install java-1.7.0-openjdk-devel 

를 오픈 JDK가 제대로 모든 것을 구성 할 alternatives 명령을 실행 설치되어있다. Oracle JDK를 사용하려면 RPM 또는 tar.gz를 사용할 수 있습니다. /usr/java에 설치된 RPM 인 반면 tar.gz는 해당 디렉토리 또는 /opt/java 또는 다른 것과 같은 사용자가 아닌 특정 디렉토리로 추출되어야합니다. 개인적으로 나는 그래서 뭔가 같은 것이 설치 RPM을 권 해드립니다 : 후

yum localinstall jdk-8u5-linux-x64.rpm 
yum localinstall jdk-8u5-linux-x64-demos.rpm 

설치 그러나 대부분의 사람들과 문서 게으른 얻을 alternatives 명령합니다 (CentOS는 위키 페이지를 봐 오는 예는에 다른 대답 포인트 내가 게으름에 의미하는 것의). 및 javac을 설정하는 데 실제로 alternatives 명령을 사용해야하며 Java와 함께 제공되는 다른 모든 명령과 해당 명령의 매뉴얼 페이지도 설정해야합니다. JDK 8에 대한 내 예 즉

jdk=/usr/java/jdk1.8.0_05 
jre=$jdk/jre 

alternatives \ 
    --install /usr/bin/java java $jre/bin/java 180005 \ 
    --slave /usr/lib/jvm/jre jre $jre \ 
    --slave /usr/bin/keytool keytool $jre/bin/keytool \ 
    --slave /usr/bin/orbd orbd $jre/bin/orbd \ 
    --slave /usr/bin/pack200 pack200 $jre/bin/pack200 \ 
    --slave /usr/bin/rmid rmid $jre/bin/rmid \ 
    --slave /usr/bin/rmiregistry rmiregistry $jre/bin/rmiregistry \ 
    --slave /usr/bin/servertool servertool $jre/bin/servertool \ 
    --slave /usr/bin/tnameserv tnameserv $jre/bin/tnameserv \ 
    --slave /usr/bin/unpack200 unpack200 $jre/bin/unpack200 \ 
    --slave /usr/bin/javaws javaws $jre/bin/javaws \ 
    --slave /usr/bin/jjs jjs $jre/bin/jjs \ 
    --slave /usr/share/man/man1/java.1 java.1 \ 
    $jdk/man/man1/java.1 \ 
    --slave /usr/share/man/man1/keytool.1 keytool.1 \ 
    $jdk/man/man1/keytool.1 \ 
    --slave /usr/share/man/man1/orbd.1 orbd.1 \ 
    $jdk/man/man1/ordb.1 \ 
    --slave /usr/share/man/man1/pack200.1 pack200.1 \ 
    $jdk/man/man1/pack200.1 \ 
    --slave /usr/share/man/man1/rmid.1 rmid.1 \ 
    $jdk/man/man1/rmid.1 \ 
    --slave /usr/share/man/man1/rmiregistry.1 rmiregistry.1 \ 
    $jdk/man/man1/rmiregistry.1 \ 
    --slave /usr/share/man/man1/servertool.1 servertool.1 \ 
    $jdk/man/man1/servertool.1 \ 
    --slave /usr/share/man/man1/tnameserv.1 tnameserv.1 \ 
    $jdk/man/man1/tnameserv.1 \ 
    --slave /usr/share/man/man1/unpack200.1 unpack200.1 \ 
    $jdk/man/man1/unpack200.1 \ 
    --slave /usr/share/man/man1/javaws.1 javaws.1 \ 
    $jdk/man/man1/javaws.1 \ 
    --slave /usr/share/man/man1/jjs.1 jjs.1 \ 
    $jdk/man/man1/jjs.1 

alternatives \ 
    --install /usr/lib/jvm/jre-1.8.0 \ 
    jre_1.8.0 $jre 180005 \ 

alternatives \ 
    --install /usr/bin/javac javac $jdk/bin/javac 180005 \ 
    --slave /usr/lib/jvm/java java_sdk $jdk \ 
    --slave /usr/bin/appletviewer appletviewer $jdk/bin/appletviewer \ 
    --slave /usr/bin/extcheck extcheck $jdk/bin/extcheck \ 
    --slave /usr/bin/idlj idlj $jdk/bin/idlj \ 
    --slave /usr/bin/jar jar $jdk/bin/jar \ 
    --slave /usr/bin/jarsigner jarsigner $jdk/bin/jarsigner \ 
    --slave /usr/bin/javadoc javadoc $jdk/bin/javadoc \ 
    --slave /usr/bin/javafxpackager javafxpackager $jdk/bin/javafxpackager \ 
    --slave /usr/bin/javah javah $jdk/bin/javah \ 
    --slave /usr/bin/javap javap $jdk/bin/javap \ 
    --slave /usr/bin/jcmd jcmd $jdk/bin/jcmd \ 
    --slave /usr/bin/jconsole jconsole $jdk/bin/jconsole \ 
    --slave /usr/bin/jdb jdb $jdk/bin/jdb \ 
    --slave /usr/bin/jdeps jdeps $jdk/bin/jdeps \ 
    --slave /usr/bin/jhat jhat $jdk/bin/jhat \ 
    --slave /usr/bin/jinfo jinfo $jdk/bin/jinfo \ 
    --slave /usr/bin/jmap jmap $jdk/bin/jmap \ 
    --slave /usr/bin/jmc jmc $jdk/bin/jmc \ 
    --slave /usr/bin/jps jps $jdk/bin/jps \ 
    --slave /usr/bin/jrunscript jrunscript $jdk/bin/jrunscript \ 
    --slave /usr/bin/jsadebugd jsadebugd $jdk/bin/jsadebugd \ 
    --slave /usr/bin/jstack jstack $jdk/bin/jstack \ 
    --slave /usr/bin/jstat jstat $jdk/bin/jstat \ 
    --slave /usr/bin/jstatd jstatd $jdk/bin/jstatd \ 
    --slave /usr/bin/jvisualvm jvisualvm $jdk/bin/jvisualvm \ 
    --slave /usr/bin/native2ascii native2ascii $jdk/bin/native2ascii \ 
    --slave /usr/bin/policytool policytool $jdk/bin/policytool \ 
    --slave /usr/bin/rmic rmic $jdk/bin/rmic \ 
    --slave /usr/bin/schemagen schemagen $jdk/bin/schemagen \ 
    --slave /usr/bin/serialver serialver $jdk/bin/serialver \ 
    --slave /usr/bin/wsgen wsgen $jdk/bin/wsgen \ 
    --slave /usr/bin/wsimport wsimport $jdk/bin/wsimport \ 
    --slave /usr/bin/xjc xjc $jdk/bin/xjc \ 
    --slave /usr/share/man/man1/appletviewer.1 appletviewer.1 \ 
    $jdk/man/man1/appletviewer.1 \ 
    --slave /usr/share/man/man1/extcheck.1 extcheck.1 \ 
    $jdk/man/man1/extcheck.1 \ 
    --slave /usr/share/man/man1/idlj.1 idlj.1 \ 
    $jdk/man/man1/idlj.1 \ 
    --slave /usr/share/man/man1/jar.1 jar.1 \ 
    $jdk/man/man1/jar.1 \ 
    --slave /usr/share/man/man1/jarsigner.1 jarsigner.1 \ 
    $jdk/man/man1/jarsigner.1 \ 
    --slave /usr/share/man/man1/javac.1 javac.1 \ 
    $jdk/man/man1/javac.1 \ 
    --slave /usr/share/man/man1/javadoc.1 javadoc.1 \ 
    $jdk/man/man1/javadoc.1 \ 
    --slave /usr/share/man/man1/javafxpackager.1 javafxpackager.1 \ 
    $jdk/man/man1/javafxpackager.1 \ 
    --slave /usr/share/man/man1/javah.1 javah.1 \ 
    $jdk/man/man1/javah.1 \ 
    --slave /usr/share/man/man1/javap.1 javap.1 \ 
    $jdk/man/man1/javap.1 \ 
    --slave /usr/share/man/man1/jcmd.1 jcmd.1 \ 
    $jdk/man/man1/jcmd.1 \ 
    --slave /usr/share/man/man1/jconsole.1 jconsole.1 \ 
    $jdk/man/man1/jconsole.1 \ 
    --slave /usr/share/man/man1/jdb.1 jdb.1 \ 
    $jdk/man/man1/jdb.1 \ 
    --slave /usr/share/man/man1/jdeps.1 jdeps.1 \ 
    $jdk/man/man1/jdeps.1 \ 
    --slave /usr/share/man/man1/jhat.1 jhat.1 \ 
    $jdk/man/man1/jhat.1 \ 
    --slave /usr/share/man/man1/jinfo.1 jinfo.1 \ 
    $jdk/man/man1/jinfo.1 \ 
    --slave /usr/share/man/man1/jmap.1 jmap.1 \ 
    $jdk/man/man1/jmap.1 \ 
    --slave /usr/share/man/man1/jmc.1 jmc.1 \ 
    $jdk/man/man1/jmc.1 \ 
    --slave /usr/share/man/man1/jps.1 jps.1 \ 
    $jdk/man/man1/jps.1 \ 
    --slave /usr/share/man/man1/jrunscript.1 jrunscript.1 \ 
    $jdk/man/man1/jrunscript.1 \ 
    --slave /usr/share/man/man1/jsadebugd.1 jsadebugd.1 \ 
    $jdk/man/man1/jsadebugd.1 \ 
    --slave /usr/share/man/man1/jstack.1 jstack.1 \ 
    $jdk/man/man1/jstack.1 \ 
    --slave /usr/share/man/man1/jstat.1 jstat.1 \ 
    $jdk/man/man1/jstat.1 \ 
    --slave /usr/share/man/man1/jstatd.1 jstatd.1 \ 
    $jdk/man/man1/jstatd.1 \ 
    --slave /usr/share/man/man1/jvisualvm.1 jvisualvm.1 \ 
    $jdk/man/man1/jvisualvm.1 \ 
    --slave /usr/share/man/man1/native2ascii.1 native2ascii.1 \ 
    $jdk/man/man1/native2ascii.1 \ 
    --slave /usr/share/man/man1/policytool.1 policytool.1 \ 
    $jdk/man/man1/policytool.1 \ 
    --slave /usr/share/man/man1/rmic.1 rmic.1 \ 
    $jdk/man/man1/rmic.1 \ 
    --slave /usr/share/man/man1/schemagen.1 schemagen.1 \ 
    $jdk/man/man1/schemagen.1 \ 
    --slave /usr/share/man/man1/serialver.1 serialver.1 \ 
    $jdk/man/man1/serialver.1 \ 
    --slave /usr/share/man/man1/wsgen.1 wsgen.1 \ 
    $jdk/man/man1/wsgen.1 \ 
    --slave /usr/share/man/man1/wsimport.1 wsimport.1 \ 
    $jdk/man/man1/wsimport.1 \ 
    --slave /usr/share/man/man1/xjc.1 xjc.1 \ 
    $jdk/man/man1/xjc.1 

alternatives \ 
    --install /usr/lib/jvm/java-1.8.0 \ 
    java_sdk_1.8.0 $jdk 180005 \ 

하지만 당신은 당신의 경로에 대한 jdk= 라인을 교체하는 경우 그와 거의 비슷하지만, 8했다 하나와 함께 새로운 명령의 몇 가지가있다 :처럼 당신은 실행해야합니다 8에서 떨어지므로 7을 설치하고 싶다면 약간의 조정이 필요합니다. 1800005 번호도 기록하십시오. alternatives 명령을 사용하면 더 높은 숫자가 기본 선택이며 OpenJDK 7u55는 170055를 사용합니다. 설치된 OpenJDK가 사용하는 숫자보다 낮은 숫자를 선택하면 alternatives --config javaalternatives --config javac을 실행해야합니다.

alternatives 명령을 실행 한 후에 makewhatis을 실행하여 매뉴얼 페이지 키워드 데이터베이스를 업데이트하려고합니다.

그런 다음 당신은 당신의 파이어 폭스의 자바 플러그인을 설치 할 수 있습니다 :

ln -s /usr/java/jdk1.8.0_05/jre/lib/amd64/libnpjp2.so /usr/lib64/mozilla/plugins/ 

이 그럼 당신은 더블 클릭으로 당신의 시스템 -> 환경 설정 메뉴 및 설정 JAR 파일에 Java 컨트롤 패널을 추가 할 것 에 :

/bin/cp -fr /usr/java/jdk1.8.0_05/jre/lib/desktop/* /usr/share/ 
/bin/cp -fr /usr/java/jdk1.8.0_05/jre/lib/desktop/icons/hicolor/* /usr/share/icons/System 
/usr/bin/gtk-update-icon-cache -f /usr/share/icons/System 
/usr/bin/update-desktop-database 

분명하지 않은 경우이 모든 것을 root으로 지정하십시오. root이 없으면 tar.gz 버전을 사용하고 PATH을 수정하십시오. http://blog.osdev.org/java/2014/04/22/jdk-alternatives.html

0

아마도/usr/bin/java에 다른 Java 설치 디렉토리에 대한 링크가있을 것입니다.

확인 there CentOS는

+0

'/ usr/bin'에'java' 폴더가 없습니다. – ggkmath

+0

그런 다음 java 바이너리 경로가 무엇인지 확인할 수 있습니다. # _which java_ –

관련 문제