2014-03-25 3 views
2

나는 PUMA 벤치 마크 세트 (Purdue Mapreduce Benchmarks Suite : hadoop 용)를 실행하려고합니다. 한 응용 프로그램 (단어 수)을 적절하게 실행했지만 다른 응용 프로그램 (invertedindex)을 실행할 수 없습니다. 오류가 런타임에 occures 그리고 내가 봤하고 있기 때문에 Java 버전의 발견JAVA 런타임 오류 : java.lang.UnsupportedClassVersionError. 지원되지 않는 major.minor 버전 51.0

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/hadoop/examples/InvertedIndex : Unsupported major.minor version 51.0

말한다. Java 버전을 확인한 후 코드를 다시 컴파일 한 다음 실행하십시오. 그러나 invertedindex 응용 프로그램과 wordcount 응용 프로그램의 런타임에서도 여전히 동일한 오류가 발생합니다.

$ java -version 
java version "1.7.0_51" 
Java(TM) SE Runtime Environment (build 1.7.0_51-b13) 
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode) 
$ javac -version 
javac 1.7.0_51 

이 문제를 어떻게 해결할 수 있습니까? 이 오류가 소스 코드로 인해 발생할 수 있습니까?

+0

[지원되지 않는 major.minor 버전 51.0] 가능한 복제본 (http://stackoverflow.com/questions/10382929/unsupported-major-minor-version-51-0) – radai

답변

3

java -version을 통해 얻은 java 버전은 hadoop의 Java 버전을 반영하지 않습니다.

hadoop의 자바 버전을 확인하려면 hadoop classpath 명령을 사용하고 가리키는 jdk 디렉토리를 확인하십시오. 또는 hadoop/config/hadoop-env.sh로 가서 찾을 수 있습니다.

문제는 jok 1.7에 대한 hadoops의 Java 홈을 가리켜 해결할 가능성이 큽니다. hadoop-env.sh에서 이것을 다시 편집 할 수 있습니다.

관련 문제