openjdk-7-jdk를 설치해도 Java가 업데이트되지 않습니다(아직 버전 1.6임).

openjdk-7-jdk를 설치해도 Java가 업데이트되지 않습니다(아직 버전 1.6임).

Java를 업데이트하는 데 문제가 있습니다. 우분투 11.10을 실행하고 있습니다.

실행할 수 sudo apt-get install openjdk-7-jdk있으며 성공적으로 완료됩니다. javac -version1.7이지만 java -version1.6입니다. 이는 다음과 유사합니다.이 문제하지만 내 문제는 내가 아는 한 경로가 아닙니다.

$ echo $PATH
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

감사해요.

답변1

업데이트:

꽤 좋은 설명이 있는 사이트를 찾았습니다.링크


링크에서:

그런 다음 몇 가지 구성을 수행해야 합니다. 데비안에는 와
같은 다양한 버전의 프로그램을 유지 관리하는 스크립트가 있습니다 .javaupdate-alternatives

업데이트 대안 --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0/bin/java 1065
업데이트 대안 --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0/bin/javac 1065

여기서 1065는 우선순위입니다.

내 설치를 확인하려면 –config매개변수를 사용하여
update-alternatives --config java
다음을 인쇄합니다.
There are 2 choices for the alternative java (providing /usr/bin/java).

선택 경로 우선순위 상태
------------------------------------- ----------
* 0 /usr/lib/jvm/jdk1.7.0/bin/java 1065 자동 모드
  1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 수동 모드
  2 /usr/lib/jvm/jdk1.7.0/bin/java 1065 수동 모드

java -version
그리고 1065가 1061보다 높기 때문에 새로 설치된 Java 7이 기본적으로 내 컴퓨터 인쇄 에 사용됩니다 .

자바 버전 "1.7.0"
 Java(TM) SE 런타임 환경(빌드 1.7.0-b147)
 Java HotSpot(TM) 64비트 서버 VM(빌드 21.0-b17, 혼합 모드)

노트: 이렇게 하면 더 이해하기 쉬워질 수 있습니다.

SLES11 # 어떤 자바
/usr/빈/자바

SLES11 # 업데이트-대안 --list java
/usr/lib64/jvm/jre-1.6.0-ibm/bin/java

SLES11 # 업데이트-대안 --display java
java - 상태는 자동입니다.
 링크는 현재 /usr/lib64/jvm/jre-1.6.0-ibm/bin/java를 가리킵니다.
/usr/lib64/jvm/jre-1.6.0-ibm/bin/java - 우선순위 1608
 슬레이브 rmiregistry: /usr/lib64/jvm/jre-1.6.0-ibm/bin/rmiregistry
 슬레이브 tnameserv: /usr/lib64/jvm/jre-1.6.0-ibm/bin/tnameserv
 슬레이브 rmid: /usr/lib64/jvm/jre-1.6.0-ibm/bin/rmid
 슬레이브 jre_exports: /usr/lib64/jvm-exports/jre-1.6.0-ibm
 슬레이브 정책 도구: /usr/lib64/jvm/jre-1.6.0-ibm/bin/policytool
 슬레이브 키 도구: /usr/lib64/jvm/jre-1.6.0-ibm/bin/keytool
 슬레이브 jre: /usr/lib64/jvm/jre-1.6.0-ibm
현재 '최상의' 버전은 /usr/lib64/jvm/jre-1.6.0-ibm/bin/java입니다.

매뉴얼 페이지는 업데이트 대안이 해당 디렉토리에 사용하는 경로를 제공합니다.

SLES11 # 비밀번호
/etc/대안

SLES11 #ll
lrwxrwxrwx 1 루트 루트 37 3월 19일 06:03 java -> /usr/lib64/jvm/jre-1.6.0-ibm/bin/java
lrwxrwxrwx 1 루트 루트 28 3월 19일 06:03 jre -> /usr/lib64/jvm/jre-1.6.0-ibm
lrwxrwxrwx 1 루트 루트 28 3월 19일 06:03 jre_1.6.0 -> /usr/lib64/jvm/jre-1.6.0-ibm
lrwxrwxrwx 1 루트 루트 36 3월 19일 06:03 jre_1.6.0_exports -> /usr/lib64/jvm-exports/jre-1.6.0-ibm
lrwxrwxrwx 1 루트 루트 36 3월 19일 06:03 jre_exports -> /usr/lib64/jvm-exports/jre-1.6.0-ibm
lrwxrwxrwx 1 루트 루트 28 3월 19일 06:03 jre_ibm -> /usr/lib64/jvm/jre-1.6.0-ibm
lrwxrwxrwx 1 루트 루트 36 3월 19일 06:03 jre_ibm_exports -> /usr/lib64/jvm-exports/jre-1.6.0-ibm

이미 설치되어 있고 기본값만 변경해야 하는 경우 변경합니다.

SLES11 # 업데이트-대체 --config java

Java를 제공하는 프로그램은 1개뿐입니다.
(/usr/lib64/jvm/jre-1.6.0-ibm/bin/java). 구성할 것이 없습니다.


원래 답변:

들여다보면 구성 파일이 보일 것 /etc/java입니다 . 또는/etc/java-7-openjdk
java.confjvm.cfg

이는 일반적으로 구성 파일에 따라 옵션이 설정됩니다. 동시에 여러 버전의 Java를 설치하고 시작 변수를 변경하여 기본 JVM을 적용할 수 있습니다.

CentOS에서java.conf

# 기본 JRE 패키지가 설치되어 있는 경우
# (예: java-1.6.0-openjdk):
#JAVA_HOME=$JVM_ROOT/jre

# 개발 JDK 패키지가 설치되어 있는 경우
# (예: java-1.6.0-openjdk-devel):
#JAVA_HOME=$JVM_ROOT/자바

우분투에서jvm.cfg

# java, javac 등에 대한 옵션으로 사용할 수 있는 JVM 목록입니다.
# 순서가 중요합니다. 이 목록의 첫 번째는 기본 JVM입니다.
# 이 파일과 해당 형식은 모두 지원되지 않으며
# 향후 릴리스에서는 사라질 것입니다.
#
# 다음을 사용하여 임의의 위치에서 JVM을 선택할 수도 있습니다.
# "-XXaltjvm=" 옵션이지만 이 옵션도 지원되지 않습니다.
# 향후 릴리스에서는 사용하지 못할 수도 있습니다.
#
- 알려진 서버
-클라이언트 무시
-핫스팟 오류
-클래식 경고
-기본 오류
-녹색 오류
-jamvm이 알려져 있음
-알려진 카카오
-0으로 알려짐
-상어 ALIASED_TO -제로

우분투에는 다음과 같은 프로그램이 있습니다. update-java-alternatives
이것은 매뉴얼 페이지의 맨 위 몇 줄입니다.

이름
       update-java-alternatives - jre/sdk 설치를 위한 대안 업데이트

개요
       업데이트-자바-대안 [--jre] [--플러그인] [-t|--test|-v|--verbose]
             -l|--목록 []
             -s|--세트
             -a|--자동
             -h|-?|--도움말

설명
       update-java-alternatives는 Java 언어에 대한 하나의 런타임 또는 개발 키트에 속하는 모든 대안을 업데이트합니다. 패키지는 다음을 제공합니다.
       /usr/lib/jvm/..jinfo에 있는 대안 정보입니다.
root@ubuntul:/# update-java-alternatives -l  
자바-1.6.0-openjdk 1061 /usr/lib/jvm/java-1.6.0-openjdk
-s|--세트
              등록된 jre/sdk 설치의 모든 대안을 설치 시 제공되는 프로그램 경로로 설정합니다.

/etc/profile.d내가 일반적으로 보게 될 것은 Java 시작 환경에 대한 링크입니다 .

내 생각에는 Java 라이브러리가 같은 위치에 설치되어 있고 구성 파일이 여전히 원래 버전으로 기본 설정되어 있는 것 같습니다. 새 JVM 경로만 제공하면 됩니다.

관련 정보