[HADOOP] 하둡 :«오류 : JAVA_HOME이 설정되지 않았습니다»
HADOOP하둡 :«오류 : JAVA_HOME이 설정되지 않았습니다»
우분투 11.10에 Hadoop을 설치하려고합니다. conf / hadoop-env.sh 파일에 JAVA_HOME 변수를 설정했습니다.
# export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk
그런 다음이 명령을 실행합니다 (독립 실행 형 작업).
$ mkdir input
$ cp conf/*.xml input
$ bin/hadoop jar hadoop-examples-*.jar grep input output 'dfs[a-z.]+'
$ cat output/*
하지만 세 번째 명령을 실행할 때 다음 오류가 있습니다.
JAVA_HOME 변수가 올바르게 설정되지 않았습니까?
해결법
-
==============================
1.주석 태그를 제거하고 hadoop-env.sh의 JAVA_HOME과 적절한 .bashrc 및 / 또는 .profile을 변경했는지 확인하십시오.
주석 태그를 제거하고 hadoop-env.sh의 JAVA_HOME과 적절한 .bashrc 및 / 또는 .profile을 변경했는지 확인하십시오.
# export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk
해야한다
export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk
/ etc / profile에서 모든 사용자에 대해 JAVA_HOME 및 PATH를 설정할 수 있습니다 (이전에이 경로를 잘못된 경로로 설정하지 않았는지 확인하십시오).
또한 로그 아웃 / 인 또는 source / etc / profile을 실행하여 새 변경 사항을 활성화하는 것을 잊지 마십시오.
-
==============================
2.Hadoop 설정 디렉토리에있는 hadoop-env.sh 파일에서 JAVA_HOME을 설정해야합니다. 기본적으로 JAVA_HOME 설정 행은 주석 처리됩니다.
Hadoop 설정 디렉토리에있는 hadoop-env.sh 파일에서 JAVA_HOME을 설정해야합니다. 기본적으로 JAVA_HOME 설정 행은 주석 처리됩니다.
-
==============================
3.JAVA_HOME이 설정되어 있는지 확인하려면 터미널에 echo $ JAVA_HOME을 입력하십시오.
JAVA_HOME이 설정되어 있는지 확인하려면 터미널에 echo $ JAVA_HOME을 입력하십시오.
java -version을 입력하여 실제로 사용중인 java의 버전을 알 수 있습니다.
그건 그렇고, 귀하의 설명을 읽고 그것은 실제로 쓰는 것
export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk
conf / hadoop-env.sh 파일에서 터미널이나 ~ / .bashrc 또는 ~ / .profile에 작성해야하며 source <수정 된 파일 경로>를 입력해야합니다.
-
==============================
4..bashrc 파일을 추가 할 수 있습니다 :
.bashrc 파일을 추가 할 수 있습니다 :
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")
패키지를 업데이트하면 동적으로 변경됩니다.
-
==============================
5.이 JAVA_HOME = / usr / lib / jvm / java-1.6.0-openjdk를 hadoop-env.sh 파일로 복사하십시오.
이 JAVA_HOME = / usr / lib / jvm / java-1.6.0-openjdk를 hadoop-env.sh 파일로 복사하십시오.
JAVA_HOME은 java 바이너리가있는 위치입니다.
-
==============================
6.나를 위해 일한 해결책은 JAVA_HOME을 / etc / 환경에 설정하는 것이 었습니다.
나를 위해 일한 해결책은 JAVA_HOME을 / etc / 환경에 설정하는 것이 었습니다.
/ etc / profile 파일에서 JAVA_HOME을 설정할 수 있지만 JAVA_HOME 또는 시스템 변수의 기본 위치는 / etc / environment입니다.
/ etc / environment를 nano 나 vim 같은 텍스트 편집기에서 열고 다음 줄을 추가하십시오 :
JAVA_HOME="/usr/lib/jvm/your_java_directory"
변수로드 :
source /etc/environment
변수가 올바르게로드되었는지 확인하십시오.
echo $JAVA_HOME
-
==============================
7.위의 솔루션을 시도했지만 다음 사항이 저에게 효과적이었습니다.
위의 솔루션을 시도했지만 다음 사항이 저에게 효과적이었습니다.
export JAVA_HOME=/usr/java/default
-
==============================
8.나는 이것을 수정하지 않고 나의 env에서 해결했다. hadoop-env.sh
나는 이것을 수정하지 않고 나의 env에서 해결했다. hadoop-env.sh
/ bin / bash를 기본 쉘로 사용하지 않는 것이 좋을 것입니다. / bin / sh가 아닙니다.
전에 확인하십시오 :
모든 노드에서 $ SHELL을 echo하고, print / bin / bash가 있는지 확인하십시오. 그렇지 않으면 vi / etc / passwd, 사용자 이름의 끝에 / bin / bash를 추가하십시오. 심판
-
==============================
9.위의 오류는 두 단어 사이에 공백이 있기 때문에 발생합니다.
위의 오류는 두 단어 사이에 공백이 있기 때문에 발생합니다.
예 : Java가 C : \ Program Files \ Java -> Space에 위치하여 프로그램과 파일 사이에 위와 같은 문제가 발생할 수 있습니다. 공간을 제거하면 오류가 표시되지 않습니다.
from https://stackoverflow.com/questions/8827102/hadoop-error-java-home-is-not-set by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] Hadoop namenode : 단일 장애 지점 (0) | 2019.06.06 |
---|---|
[HADOOP] $ HADOOP_HOME은 더 이상 사용되지 않습니다. (0) | 2019.06.06 |
[HADOOP] 어떻게 돼지를 하나의 튜플로 묶는가? (0) | 2019.06.06 |
[HADOOP] hadoop으로 메모리 제한 지정하기 (0) | 2019.06.06 |
[HADOOP] Hadoop - namenode가 시작되지 않습니다. (0) | 2019.06.06 |