java.lang.NoClassDefFoundError: org / apache / hadoop / hbase / MasterNotRunningException - PullRequest
2 голосов
/ 01 февраля 2011

Я создал собственный код Java-клиента HBase, но мне очень трудно его скомпилировать и запустить.Я компилирую из командной строки, и я не смог найти каких-либо инструкций, как это сделать, или какие банки мне нужно иметь на моем classpath.

Ниже приведен путь к классу, который я использую:

$HADOOP_HOME/hadoop/hadoop-0.20.2/hadoop-0.20.2-core.jar:
$HADOOP_HOME/hbase/hbase-0.90.0/hbase-0.90.0.jar:
$HADOOP_HOME/hbase/lib/zookeeper-3.3.2.jar

Когда я запускаю команду javac, она прекрасно компилируется.Однако, когда я запускаю свой код Java, я получаю следующую ошибку:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/MasterNotRunningException
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.MasterNotRunningException
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: HBaseConnection.  Program will exit.  

Что мне не хватает?

Спасибо!

Ответы [ 2 ]

3 голосов
/ 01 февраля 2011

Класс org.apache.hadoop.hbase.MasterNotRunning недоступен в пути к классам. Скорее всего, вы не настроили путь к классу, чтобы включить флягу hadoop. Это может быть так же просто, как неправильное написание (и $ HOME должен быть расширен).

0 голосов
/ 03 августа 2016

Убедитесь, что в систему заново встроены собственные файлы.

Неправильно:

[hduser @ master sbin] $ hadoop fs -ls /

16/07/17 15:38:17 WARN util.NativeCodeLoader: невозможно загрузить библиотеку native-hadoop для вашей платформы ... с использованием встроенных java-классов, где это применимо

Найдено 5 товаров drwxr-xr-x - супергруппа hduser 0 2016-07-17 10:57 / см

Корректное

[hduser @ master sbin] $ hadoop fs -ls /

Найдено 5 предметов

drwxr-xr-x - супергруппа hduser 0 2016-07-17 10:57 / см

в неправильной конфигурации, перейдите по ссылке ниже, чтобы построить его http://www.myiphoneadventure.com/hardware/hadoop-build-native-library

Для Hadoop 2.7.2 на RHL 6 GLIBC_2.12 вы можете использовать https://github.com/sterin501/SecureHadoop/tree/master/native

Для полной настройки hadoop 2.7.2: http://wccandlinux.blogspot.in/2016/07/how-to-configure-hadoop-with-kerberos.html

...