우분투에서 현재 JAVA_HOME을 찾는 방법은 무엇입니까? maven을 설치할 때 java_home 경로를 설정해야합니다.
우분투에서 현재 JAVA_HOME을 찾는 방법은 무엇입니까? maven을 설치할 때 java_home 경로를 설정해야합니다.
답변:
터미널에 입력
echo $JAVA_HOME
JAVA_HOME 변수 경로를 표시합니다.
아무것도 표시되지 않으면이 설정으로 설정하십시오.
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
JDK 유형 및 버전에 따라 다릅니다.
다음 명령을 표시합니다.
다른 JDK를 사용하거나 JDK를 전환하려면 이 게시물을 따르십시오.
JAVA_HOME doesn't make jdk default, it just makes JAVA_HOME variable set to a path & if you want to use different jdk installed on same machine then check my answer, I have edited it.
JDK 1.6 (Java 6에 해당) 또는 최신 버전이 설치되어 있으면에 이름이 지정된 프로그램이 있어야 jrunscript
합니다 PATH
. 이를 사용하여 해당하는을 찾을 수 있습니다 JAVA_HOME
. 예:
$ jrunscript -e 'java.lang.System.out.println(java.lang.System.getProperty("java.home"));'
/opt/local/jdk1.7.0_76/jre
다음과 같이 환경 변수를 설정할 수 있습니다.
$ export JAVA_HOME="$(jrunscript -e 'java.lang.System.out.println(java.lang.System.getProperty("java.home"));')"
JRE에는을 포함하지 않으므로 JRE jrunscript
뿐만 아니라 JDK를 설치 한 경우에만 작동합니다.
또 다른 휴대용 옵션은 다음에서 JDK의 절대 경로를 추출하는 것입니다 javac
.
export JAVA_HOME=`type -p javac|xargs readlink -f|xargs dirname|xargs dirname`
끝에서 제거하기 위해 절대 javac
경로가 dirname
두 번 전달됩니다 /bin/javac
. 디렉토리의 완전한 추출은 다음과 같습니다.
$ type -p javac
/usr/bin/javac
$ readlink -f /usr/bin/javac
/usr/lib/jvm/java-8-oracle/bin/javac
$ dirname /usr/lib/jvm/java-8-oracle/bin/javac
/usr/lib/jvm/java-8-oracle/bin/
$ dirname /usr/lib/jvm/java-8-oracle/bin/
/usr/lib/jvm/java-8-oracle/
type -p javac|xargs readlink -f|xargs dirname|xargs dirname
를 설정하지 않고 디렉토리를 알고 (수출 부분 제외).
업데이트 대안 메커니즘을 고려하려면 다음을 수행하십시오.
$ update-alternatives --query java | grep 'Value: ' | grep -o '/.*/jre'
다음과 같이 환경 변수를 설정할 수 있습니다.
$ export JAVA_HOME="$(update-alternatives --query java | grep 'Value: ' | grep -o '/.*/jre')"
/jre
. 당신은 시도 할지도 모릅니다export JAVA_HOME="$(update-alternatives --query java | grep 'Value: ' | sed -e 's/Value: //;s?/jre/bin/java??;')"
그냥 명령을 실행
sudo update-alternatives --config java
그것은 같은 것을 줄 것입니다
Es gibt nur eine Alternative in Link-Gruppe java (die /usr/bin/java bereitstellt): /usr/lib/jvm/java-8-oracle/jre/bin/java
이것으로부터 / usr / lib / jvm / java-8-oracle /을 java 홈으로 사용할 수 있습니다. 이제 JAVA_HOME 변수로 내보낼 수 있습니다
export JAVA_HOME=/usr/lib/jvm/java-8-oracle/
이제 $ JAVA_HOME을 에코하십시오.
Java 환경 변수 설정
PPA에는 Java 환경 변수를 자동으로 설정하는 패키지도 포함되어 있습니다. 명령을 실행하면됩니다.
sudo apt install oracle-java8-set-default
Java 9 이상의 경우 :
이 답변 https://askubuntu.com/a/657468/963 은 동봉 된 Nashorn JavaScript 엔진 Nashorn을 사용하여 java.home
시스템 속성 을 인쇄 합니다. Nashorn은 더 이상 사용되지 않으므로 jshell
Java 9에 도입 된 대안이 있습니다 .
echo 'System.out.println(java.lang.System.getProperty("java.home"));' | jshell -
내 Ubuntu 18.10 시스템에서 다음을 인쇄합니다.
/usr/lib/jvm/java-11-openjdk-amd64