Linux의 JAVA_HOME 디렉토리
JAVA_HOME
디렉토리 를 찾는 데 사용할 수있는 Linux 명령이 있습니까? 환경 변수 ( "env")를 인쇄 해 보았지만 디렉토리를 찾을 수 없습니다.
echo $JAVA_HOME
설정된 경우 값을 인쇄합니다. 그러나 시작 스크립트에서 수동으로 설정하지 않은 경우 설정되지 않았을 수 있습니다.
시도 which java
했지만 아무것도 찾지 못하면 Java가 컴퓨터에 설치되지 않았거나 적어도 경로에 없을 수 있습니다. 사용중인 Linux 배포판과 루트 액세스 권한이 있는지 여부에 따라 http://www.java.com 으로 이동하여 필요한 버전을 다운로드 할 수 있습니다. 그런 다음이 디렉토리를 가리 키도록 JAVA_HOME을 설정할 수 있습니다. 이것은 단지 관례 일 뿐이며 Java가 설치되었는지 여부를 결정하는 데 사용되어서는 안됩니다.
Linux에서는 다음을 실행할 수 있습니다. $(dirname $(dirname $(readlink -f $(which javac))))
Mac에서 실행할 수 있습니다. $(dirname $(readlink $(which javac)))/java_home
창문에 대해서는 잘 모르겠지만 where javac
꽤 가까이 다가 갈 수있을 것 같아요
늦었다는 것을 알고 있지만이 명령은 / usr / 디렉토리를 검색하여 Java를 찾습니다.
sudo find /usr/ -name *jdk
결과
/usr/lib/jvm/java-6-openjdk
/usr/lib/jvm/java-1.6.0-openjdk
참고로 Mac을 사용하는 경우 현재 JAVA_HOME은 다음 위치에 있습니다.
/System/Library/Frameworks/JavaVM.framework/Home
또 다른 솔루션 인이 플랫폼의 크로스 플랫폼 (사용 java
)은 jre의 위치를 알려줍니다.
java -XshowSettings:properties -version 2>&1 > /dev/null | grep 'java.home'
java
의 현재 설정을 모두 출력하고 라는 설정을 찾습니다 java.home
.
Windows의 경우 grep 대신 findstr을 사용할 수 있습니다.
java -XshowSettings:properties -version 2>&1 | findstr "java.home"
사용하는 환경 변수의 값을 표시하려면 다음을 수행하십시오.
$ VARIABLE 에코
따라서 귀하의 경우는 다음과 같습니다.
echo $ JAVA_HOME
설정하지 않은 경우 .bashrc
파일에 추가 할 수 있습니다 .
export JAVA_HOME = $ (readlink -f / usr / bin / java | sed "s : bin / java ::")
패키지를 업데이트하면 동적으로 변경됩니다.
이 $JAVA_HOME
환경에 정의 된 경우 ...
$ echo $JAVA_HOME
$ # I am not lucky...
로드 된 클래스에서 추측 할 수 있습니다.
$ java -showversion -verbose 2>&1 | head -1
[Opened /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64/jre/lib/rt.jar]
이 방법을 사용하면 여러 설치가있는 경우 올바른 jdk
/ jre
사용 된 것을 찾을 수 있습니다 .
또는 사용 strace
:
$ strace -e open java -showversion 2>&1 | grep -m1 /jre/
open("/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64/jre/bin/../lib/amd64/jli/tls/x86_64/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
터미널에서 다음을 입력합니다.
echo "$ JAVA_HOME"
아무것도 얻지 못하면 환경 변수 JAVA_HOME이 설정되지 않은 것입니다. "locate java"를 사용하여 Java 설치 위치를 찾아 볼 수 있습니다.
JAVA_HOME을 설정 했습니까?
- Korn 및 bash 쉘 : export JAVA_HOME = jdk-install-dir
- Bourne 쉘 : JAVA_HOME = jdk-install-dir; export JAVA_HOME
- C 쉘 : setenv JAVA_HOME jdk-install-dir
다음은 stdout에 대한 디렉터리 만 가져 오는 개선 사항입니다.
java -XshowSettings:properties -version 2>&1 \
| sed '/^[[:space:]]*java\.home/!d;s/^[[:space:]]*java\.home[[:space:]]*=[[:space:]]*//'
http://www.gnu.org/software/sed/manual/html_node/Print-bash-environment.html#Print-bash-environment
If you really want to get some info about your BASH put that script in your .bashrc and watch it fly by. You can scroll around and look it over.
참고URL : https://stackoverflow.com/questions/1117398/java-home-directory-in-linux
'program tip' 카테고리의 다른 글
Java MessageFormat-작은 따옴표 사이에 값을 삽입하려면 어떻게해야합니까? (0) | 2020.11.30 |
---|---|
Android 앱의 경우 SQLITE 데이터베이스를 내림차순으로 정렬하려면 어떻게해야합니까? (0) | 2020.11.29 |
루비에서 임의의 10 자리 숫자를 생성하려면 어떻게해야합니까? (0) | 2020.11.29 |
Twitter 애플리케이션 용 Android Intent (0) | 2020.11.29 |
C # 목록에서 중복 확인 (0) | 2020.11.29 |