2016-11-28 4 views
0

여기서 간단한 대체 단어 UDF를 java로 작성했습니다.
그런 다음 .java 파일을 내 보낸 다음 jar 파일을 만들었습니다.하이브 UDF 실행 : 하이브의 임시 함수 작성 중 오류 발생

같은 생성 된 jar 파일 내가 하이브 임시 기능을 만들려고하지만 오류

create temporary function functionname as 'javaprogrampkgname.javaprogramname.'; 

이하지고 있지만 이에 대한에 오류가 아래 얻고하고 다음

Add jar jar file path ;

를 사용하여 하이브에 추가 터미널 :

FAILED : 실행 오류, 반환 코드 -101 m org.apache.hadoop.hive.ql.exec.FunctionTask. ReplaceUDFpkg/ReplaceUDF : 지원되지 않는 MAJOR.MINOR 버전은 52.0

+1

자바 버전이 일치하지 않습니다. 확인 컴파일 및 런타임 자바 동일합니다 –

+0

가능한 중복 [지원되지 않는 major.minor 버전 52.0] (http://stackoverflow.com/questions/22489398/unsupported-major-minor-version-52-0) –

+0

@ Nimal Ram Sir, Java 컴파일 및 런타임 버전 모두 동일합니다. 둘 다 Java 버전 "1.7.0_80" javac 1.7.0_80 –

답변

0

그것은 당신이 UDF와 하이브 자바 버전을 만든 장소에 당신의 다른 자바 버전의 오류해야한다.

0

마지막으로이 오류의 원인이 있습니다.

예, 때문에 자바 버전 불일치뿐만 아니라이 오류 :

내가 작성 컴파일 이클립스 JAR로 내 보낸 다음이 때문에 버전으로 여기에 자바의 다른 버전에서 사용하려고 JAR를 내 보낸 JVM이이 JAR을 호출하고 찾을 수 없었습니다.

내 자바 코드를 컴파일하고 내 Hadoop 홈 경로로 설정된 "1.7"버전에서 JAR을 생성하여이 문제를 해결했습니다.