2015-10-12 1 views
0

У меня есть псевдораспределенный кластер с Oozie 4.2.0, Hadoop 2.7, Hive 1.1.2 и Java 1.8. После того как я создал дистрибутив Oozie с компонентами, я пытаюсь скопировать «общий lib» в HDFS. Когда я запускаю команду, она дает мне следующую ошибку. Я думаю, что файл JAR отсутствует (или он так говорит).Oozie 4.2.0 - произошла ошибка JNI, пожалуйста, проверьте свою установку.

Я не человек JAVA и не знаю об этой ошибке, что так всегда. Но я думаю, что если я построил Oozie успешно со всеми необходимыми файлами JAR, тогда эта ошибка не должна возникать. Я просмотрел все другие подобные проблемы с Ози с ошибкой JNI, но я не нашел достоверного ответа для решения этой проблемы. Может ли кто-нибудь помочь мне на этом фронте здесь, пожалуйста?

oozie-setup.sh sharelib create -fs hdfs://localhost:9000 
Error: A JNI error has occurred, please check your installation and try 
again 
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache 
/hadoop/conf/Configuration 
at java.lang.Class.getDeclaredMethods0(Native Method) 
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) 
at java.lang.Class.privateGetMethodRecursive(Class.java:3048) 
at java.lang.Class.getMethod0(Class.java:3018) 
at java.lang.Class.getMethod(Class.java:1784) 
at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) 
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) 
Caused by: java.lang.ClassNotFoundException:  
org.apache.hadoop.conf.Configuration 
at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
... 7 more 
+1

«Я не JAVA человек», - то вы ищете проблемы, если вы пытаетесь создать компонент Hadoop самостоятельно. В любом случае класс ** Конфигурация ** определен в JAR-файле hasoop-common', и если он отсутствует в вашем Hadoop CLASSPATH, вы, вероятно, не имеете CLASSPATH. Тьфу. Удачи. –

+0

@SamsonScharfrichter - Я так и думал, моя лучшая догадка заключалась в том, что «какая-то баночка пропала где-то»! Какая это была бы забава, чем строить вещи и самостоятельно учиться тому, что вы не знаете! .. Спасибо за указатель, я проверю свой классный путь в хаопе! – Vishant

+0

@SamsonScharfrichter - Ваш указатель действительно помог мне, натолкнувшись на это решение, чтобы скопировать файлы jar из файла $ HADOOP_INSTALL/share/common/*. Jar в папку/libext в папке oozie и создать файл .WAR. еще раз спасибо – Vishant

ответ

1

Я нашел решение для этого сам,
Шаг 1:. Копировать $ HADOOP_INSTALL/доля/общие/* банку до $ OOZIE_INSTALL/libext
Шаг 2: Восстановите файл .WAR ,
Шаг 3: Перекладка oozie