2016-08-06 4 views
2

내 OS는 우분투 16.04 LTS입니다.JDK 버전이 일치하지 않습니다.

$ cat /etc/profile # part content of this file 
JAVA_HOME=/usr/local/java/jdk1.8.0_101 
JRE_HOME=$JAVA_HOME/jre 
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin 
export JAVA_HOME 
export JRE_HOME 
export PATH 

$ echo $JAVA_HOME 
/usr/local/java/jdk1.8.0_101 

$ 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) 

$ ls /usr/local/java/ 
jdk1.7.0_79/ jdk1.8.0_101/ 

왜 내 Java 버전은 여전히 ​​jdk7입니까?

+0

'echo $ PATH'를 시도하면 그 이유를 알 수 있습니다. – EJP

답변

4

우분투는 여러 자바 버전으로 작업 할 수 있습니다. 귀하의 경우 JDK 7과 JDK 8이 시스템에 설치되어 있지만 JDK 7을 사용하고 있다는 것을 의미합니다.

Java 버전을 다른 버전으로 전환하려면 sudo update-alternatives --config java을 사용할 수 있습니다. 이 명령은 시스템에 설치된 모든 JDK를 나열하고 JDK 8에 해당하는 번호를 입력하면 JDK 8로 전환됩니다.

+0

OP가 사용자 정의 된 Java 설치를 사용하고 있다고 생각합니다. 그의 JAVA_HOME은/usr/local에있다. – xuhdev

1

명령 쉘에서 which java을 실행하십시오. 그러면 실행중인 java 명령의 출처를 알 수 있습니다.

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

검색 경로가 아닌 시작의 끝 부분에 새 빈 디렉토리를두고 :

는 나는 당신을 "는/usr/빈/자바"...이 때문에 말할 것입니다 생각한다.

그러나 더 좋은 방법은 alternatives을 다른 답변에서 제안한대로 사용하는 것입니다. ("/ usr/local"에 커스텀 인스톨을하면 대안을 이해할 수있는 "대안"을 얻기 위해 약간의 노력이 필요합니다.)

관련 문제