내 Ubuntu 15.04에는 sudo update-alternatives --config java
다음이 표시됩니다.
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-8-oracle/jre/bin/java 1074 auto mode
1 /opt/java32/jdk1.7.0_71/jre/bin/java 1 manual mode
2 /usr/lib/jvm/java-1.7.0-openjdk-i386/jre/bin/java 10 manual mode
3 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 manual mode
4 /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java 1070 manual mode
* 5 /usr/lib/jvm/java-8-oracle/jre/bin/java 1074 manual mode
단일 경로에 /usr/lib/jvm/java-8-oracle/jre/bin/java
두 개의 항목(하나는 스키마에 있고 auto
다른 하나는 manual
스키마에 있음)이 있는 이유는 무엇입니까?
두 경로 모두 동일한 우선순위 1024를 갖고 있으며 manual
경로가 기본값으로 표시되어 있습니다. 수동 모드가 항상 자동 모드보다 우선순위가 더 높나요?
답변1
표시된 항목은 *
현재 선택 항목을 나타냅니다. update-alternatives
변경하지 않으려면 아무 것도 입력할 필요가 없기 때문에 이는 기본값일 뿐입니다 .
시스템 기본값은 항상입니다 auto
. 이는 패키지 관리자가 결정한 대로 항상 우선 순위가 가장 높은 대안을 선택하도록 설정이 변경됨을 의미합니다. 연속된 별표는 manual
누군가 대안을 변경했음을 나타냅니다. 업데이트를 설치할 때 우선 순위가 변경되더라도 시스템은 이 선택을 변경하지 않습니다. 그렇습니다. 수동 모드는 항상 자동 모드보다 우선합니다. 분명히 누군가(수동으로!) 바이너리의 설정을 변경했지만 java
현재 대안은 시스템이 mode 에서 선택한 것과 여전히 동일하므로 auto
항목이 두 번 나타납니다.
java
시스템이 자동으로 "최상의" 대체 경로를 선택하도록 하려면 0
여기에서 선택하십시오. 특히 Java 애플리케이션은 사용되는 구현 및 버전이 까다로울 수 있으므로 변경 사항에 주의하세요. Debian 또는 Ubuntu 리포지토리에서 각각 제공되는 Java 애플리케이션은 항상 기본 JRE를 사용하여 실행할 수 있어야 합니다.