Java를 업데이트하는 데 문제가 있습니다. 우분투 11.10을 실행 중입니다.
성공적으로 실행 sudo apt-get install openjdk-7-jdk
하고 완료할 수 있습니다. javac -version
1.7인데 java -version
1.6이네요. 이는 다음과 유사합니다.이 문제하지만 내가 아는 한, 내 문제는 길이 아니다.
$ echo $PATH
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
감사해요.
답변1
고쳐 쓰다:
좋은 설명이 있는 웹사이트를 찾았습니다:협회
링크에서:
그런 다음 몇 가지 구성을 수행해야 합니다. 데비안에는 프로그램
의 다양한 버전을 유지 관리하는 스크립트가 있습니다 .java
update-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 수동 모드
그리고 1065가 1061보다 높기 때문에 새로 설치된 Java 7이
java -version
기본적으로 내 컴퓨터에 인쇄됩니다.
자바 버전 "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 #대안 업데이트--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 종속 keytool: /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입니다.
매뉴얼 페이지는 update-alternatives에 해당 디렉토리에 대한 경로를 제공합니다.
SLES11#password /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 루트 루트 3월 19일, 36일, 06:03 jre_1.6.0_exports -> /usr/lib64/jvm-exports/jre-1.6.0-ibm lrwxrwxrwx 1 루트 루트 3월 19일, 36일, 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 루트 루트 3월 19일, 36일, 06:03 jre_ibm_exports -> /usr/lib64/jvm-exports/jre-1.6.0-ibm
이미 설치되어 있고 기본값만 변경해야 하는 경우에는 그렇게 하십시오.
SLES11 # 대안 업데이트 --config java 단 1개의 프로그램에서만 Java를 제공합니다. (/usr/lib64/jvm/jre-1.6.0-ibm/bin/java). 구성할 것이 없습니다.
원래 답변:
/etc/java
그런 것을 보면 /etc/java-7-openjdk
구성 파일이 보일 것입니다.
java.conf
또는jvm.cfg
이는 일반적으로 옵션을 설정하는 구성 파일에 따라 다릅니다. 동시에 여러 버전의 Java를 설치하고 시작 변수를 변경하여 기본 JVM에 영향을 미칠 수 있습니다.
CentOS에서java.conf
# 기본 JRE 패키지를 설치한 경우 #(예: java-1.6.0-openjdk): #JAVA_HOME=$JVM_ROOT/jre # devel JDK 패키지를 설치한 경우 #(예: java-1.6.0-openjdk-devel): #JAVA_HOME=$JVM_ROOT/자바
우분투에서jvm.cfg
# java, javac 등에 대한 옵션으로 사용할 수 있는 JVM 목록입니다. # 순서가 중요합니다. 이 목록의 첫 번째 항목은 기본 JVM입니다. # 이 파일이나 해당 형식은 모두 지원되지 않습니다. # 이후 버전에서는 사라질 예정입니다. # # 다음 명령을 사용하여 어디에서나 JVM을 선택할 수도 있습니다. # "-XXaltjvm=" 옵션이지만 이 옵션도 지원되지 않습니다. # 향후 릴리스에서는 사용하지 못할 수도 있습니다. # - 서버가 알려져 있음 - 클라이언트가 무시함 -핫스팟 오류 -고전적인 경고 -기본 오류 -녹색 오류 -javm이 알려져 있음 - 알려진 코코 - 알려진 0 -상어 ALIASED_TO -제로
Ubuntu에는 다음과 같은 프로그램이 있습니다. 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 경로만 제공하면 됩니다.