update-alternates --config java 명령어 사용 방법
Linux Debian(Squeeze) Apache Solr.햇빛을 쬐는 jdk. 다음 해야 한다고 .sudo update-alternatives --config java
자바(일광)그러나 이 명령을 실행하면 다음과 같은 메시지가 나타납니다.
There are 3 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/bin/gij-4.4 1044 manual mode
2 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
3 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode
Press enter to keep the current choice[*], or type selection number:
기본 런타임으로 sun-java를 사용하려면 어떤 번호를 선택해야 합니까?또한 auto 및 manual 모드가 정확히 무엇을 의미합니까?위의 3을 선택하고 update-alternative 명령을 실행하면 위와 같은 출력이 표시됩니다.여기에서도 *가 3 앞에 있는 것 이외에는 아무것도 바뀌지 않은 것 같습니다만, 수동 모드는 아직 읽혀지고 있습니다.
제가 한 일이 맞는지 확인할 방법이 있나요?
'버전 '이렇게'를 update-alternatives --config java
합니다.3
Sun 구현을 사용합니다.
,에 는, 해서서에 대해서입니다.auto
»manual mode
은 고르다, 고르다에서 합니다auto mode
다음 내용을 기재합니다.
「 」를 하는
--config
옵션에서는 지정된 이름이 마스터 링크인 링크 그룹의 모든 선택사항이 나열됩니다.링크 그룹에 사용할 선택지를 묻는 메시지가 나타납니다.하면 은 더 에 .auto mode
을.--auto
옵션을 선택하여 자동 상태로 돌아갑니다.
나는 믿는다auto mode
는, 한 JRE/JDK를 됩니다.
되어 있는 /opt/java/jdk1.8.0_144
다음아까,아까다,아까다.
javac 대체 설치
$ sudo update-alternatives --install /usr/bin/javac javac /opt/java/jdk1.8.0_144/bin/javac 1
대체 구성 확인/업데이트:
$ sudo update-alternatives --config javac
「 」의 대체 .javac
않으면, 의 합니다.JDK를 사용합니다.
모든 것이 올바르게 설정되어 있는지를 확인하려면 , 다음의 순서에 따릅니다.
$ which javac
/usr/bin/javac
$ ls -l /usr/bin/javac
lrwxrwxrwx 1 root root 23 Sep 4 17:10 /usr/bin/javac -> /etc/alternatives/javac
$ ls -l /etc/alternatives/javac
lrwxrwxrwx 1 root root 32 Sep 4 17:10 /etc/alternatives/javac -> /opt/java/jdk1.8.0_144/bin/javac
그리고 마지막으로
$ javac -version
javac 1.8.0_144
필요에 따라 java, keytool, jar 등에 대해 반복합니다.
update-alternatives
에 문제가 .
위해 패키지 " " " " " " " " 입니다.java-common
요.update-java-alternatives
.
사용하기 쉬워요.먼저 시스템에서 사용할 수 있는 JDK 설치를 나열합니다.
root@mylaptop:~# update-java-alternatives -l
java-1.7.0-openjdk-amd64 1071 /usr/lib/jvm/java-1.7.0-openjdk-amd64
java-1.8.0-openjdk-amd64 1069 /usr/lib/jvm/java-1.8.0-openjdk-amd64
그리고 하나 고르세요.
root@mylaptop:~# update-java-alternatives -s java-1.7.0-openjdk-amd64
jdk를 설치하는 방법은 다음과 같습니다.
#!/bin/bash
cd /opt/
sudo mkdir java
sudo tar -zxvf ~/Downloads/jdk-8u192-linux-x64.tar.gz
sudo ln -s jdk1.8.0_192 current
for file in /opt/java/current/bin/*
do
if [ -x $file ]
then
filename=`basename $file`
sudo update-alternatives --install /usr/bin/$filename $filename $file 20000
sudo update-alternatives --set $filename $file
#echo $file $filename
fi
done
Ubuntu 18.04 LTS를 사용하고 있습니다.대부분의 경우, 제가 옷을 갈아입었을 때java
버전, 저도 같은 버전을 사용하고 싶습니다.javac
버전입니다.
사용하고 있다update-alternatives
이 방법에서는java_home
대신 다음을 수행합니다.
인스톨
에 모든 Java 버전을 설치합니다./opt/java/<version>
,예를들면
~$ ll /opt/java/
total 24
drwxr-xr-x 6 root root 4096 jan. 22 21:14 ./
drwxr-xr-x 9 root root 4096 feb. 7 13:40 ../
drwxr-xr-x 8 stephanecodes stephanecodes 4096 jan. 8 2019 jdk-11.0.2/
drwxr-xr-x 7 stephanecodes stephanecodes 4096 dec. 15 2018 jdk1.8.0_201/
대체 구성
~$ sudo update-alternatives --install /opt/java/current java_home /opt/java/jdk-11.0.2/ 100
~$ sudo update-alternatives --install /opt/java/current java_home /opt/java/jdk1.8.0_201 200
선언하다JAVA_HOME
(이 경우 글로벌 초기화 스크립트를 사용합니다)
~$ sudo sh -c 'echo export JAVA_HOME=\"/opt/java/current\" >> environment.sh'
로그아웃 또는 Ubuntu 재시작(새로고침)/etc/profile.d/environment.sh
)
사용.
Java 버전 변경
사용할 버전을 선택합니다.
~$ sudo update-alternatives --config java_home
There are 2 choices for the alternative java_home (providing /opt/java/current).
Selection Path Priority Status
------------------------------------------------------------
0 /opt/java/jdk-11.0.2 200 auto mode
1 /opt/java/jdk-11.0.2 200 manual mode
* 2 /opt/java/jdk1.8.0_201 100 manual mode
Press <enter> to keep the current choice[*], or type selection number:
버전 확인
~$ java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)
~$ javac -version
javac 11.0.2
팁.
다음 행을 에 추가합니다.~/.bash_aliases
파일:
alias change-java-version="sudo update-alternatives --config java_home && java -version && javac -version"
이제 를 사용합니다.change-java-version
Java 버전을 변경하는 명령어
링크해야 할 바이너리도 많기 때문에 다음과 같은 것을 시도해 보는 것이 좋을 것 같습니다.sudo update-alternatives --all
다른 모든 것에 대한 적절한 대안을 선택하는 것 외에java
그리고.javac
.
jdk를 정기적으로 전환(또는 출시 후 새 것으로 업데이트)하고 싶다면 sdkman을 사용하는 것이 매우 편리합니다.
sdkman으로 maven과 같은 추가 툴도 가능합니다.
열려 있는 jdk를 설치한 후 실행 후 원하는 jdk를 선택합니다.
sudo update-alternatives --config java
https://wiki.debian.org/JavaPackage 를 참조해 주세요.이 페이지 하단의 다른 방법은 Java-Common 패키지의 명령어를 사용하여 설명하고 있습니다.
AWS EC2 인스턴스에는 Java 8과 11의 2가지 버전이 설치되어 있지만, cipservice-0.0.1-SNAPSHOT.jar 파일은 Java 11을 사용하여 작성되었기 때문에 실행하기 위해 Java 11이 필요합니다.
[root@ip-module-31-94-module ~]# 대체 --config java
'자바'를 제공하는 프로그램은 두 가지가 있습니다.
선택 명령어
- java-1.8.0-openjdk x 1x86_64(/usr/lib/jvm/http-1.8.0-openjdk-1.8.0.302.b08-0.amzn2.0.1.x86_64/jre/bin/http)
- /usr/syslog/jdk-11.0.12/bin/syslog x 2
현재 선택 [+]를 유지하려면 를 입력하거나 선택 번호: 2를 입력합니다.
[root@ip-module-31-94-module ~]# java - version
Java 버전 "11.0.12" 2021-07-20 LTS Java(TM) SE Runtime Environment 18.9(빌드 11.0.12+8-LTS-237) Java HotSpot(TM) 64비트 서버 VM 18.9(빌드 11.012+8-LTS-23 모드 혼합)
이제 특정 .jar 파일을 실행할 수 있습니다.
[root@ip-172-31-94-132~]# java - jar cipservice - 0.0.1-SNAPSHOT . jar
참고 자료: - https://www.server-world.info/en/note?os=CentOS_7&p=jdk11&f=2
언급URL : https://stackoverflow.com/questions/12787757/how-to-use-the-command-update-alternatives-config-java
'programing' 카테고리의 다른 글
정규식 일치 항목 일부 추출 (0) | 2022.10.01 |
---|---|
MySQL 레플리케이션 텅스텐과갈레라 (0) | 2022.10.01 |
Vuex에서는 모듈 상태가 'store.module.state'가 아닌 'store.state.module'로 액세스되는 이유는 무엇입니까? (0) | 2022.10.01 |
Mockito와 JMockit의 비교 - 왜 Mockito가 JMockit보다 투표가 더 좋은가? (0) | 2022.10.01 |
터미널 애플리케이션에 적합한 자바, 저주 같은 라이브러리는 무엇입니까? (0) | 2022.10.01 |