He descargado la última versión estable de la Colmena, cuando empiezo a /usr/local/colmena/bin/colmena que me da este error:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hive/conf/HiveConf
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at org.apache.hadoop.util.RunJar.main(RunJar.java:149)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.conf.HiveConf
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 3 more

Hadoop DFS se inicia y de trabajo, y me han cambiado /usr/local/hive/conf/hive-env.sh para exportar HADOOP_HOME.

¿Alguien sabe qué otra cosa puedo hacer?
Gracias.

  • Esto es debido a que su ruta de clases no está establecida correctamente. Podría usted por favor, describa cómo se instaló la Colmena?
  • He descargado de la Colmena de apache.rediris.es/hive/stable/hive-0.8.1.tar.gz Luego se trasladó a /usr/local y dio permisos 777. Si escribo «echo $CLASSPATH» en la consola, me sale: /usr/local/colmena/bin:/usr/local/colmena/lib/:/usr/local/hadoop/bin/ entre otros directorios. Cuál es la variable o la ruta de la Colmena esperando encontrar? Gracias.
InformationsquelleAutor sergi123 | 2012-11-11

2 Comentarios

  1. 1

    Aparte de la edición de hive-env.sh usted también necesita editar su bash_profile.

    vim ~/.bash_profile
    

    Agregar las siguientes líneas a su bash_profile

    export HIVE_HOME=/usr/local/hive
    export PATH=$PATH:$HIVE_HOME/bin
    

    Guardar este archivo y, a continuación,

    source ~/.bash_profile
    

    Si esto aún no funciona, por favor incluya su hive-env.sh archivo y hive-site.xml archivo. También por favor dígame si usted está usando derby o mysql como metastore.

    • Hice los cambios en ~./bashrc pero aún no funciona. hive-env.sh exportación HADOOP_HOME=/usr/local/hadoop hive-site.xml: no existe en el directorio conf. Además yo no tengo ningún metastore instalado, no dice nada sobre esto: cwiki.apache.org/confluence/display/Hive/… Gracias.
    • Lo siento, tengo metastore, se creó como se dice en la introducción: $ $HADOOP_HOME/bin/hadoop fs -mkdir /tmp $ $HADOOP_HOME/bin/hadoop fs -mkdir /usuario/colmena/almacén $ $HADOOP_HOME/bin/hadoop fs -chmod g+w /tmp $ $HADOOP_HOME/bin/hadoop fs -chmod g+w /usuario/colmena/almacén
    • Puede usted por favor echo fuera HADOOP_HOME y HIVE_HOME. Puesto que no se han configurado específicamente para mysql metastore, esto significa que usted está usando derby (otra cosa que el problema puede ser algo relacionado con el mysql connector que podemos evitar, por ahora). Puede usted por favor una vez que agregue esto a bash_profile así y dime ¿qué sucede?
    • HADOOP_HOME=/usr/local/hadoop HIVE_HOME=/usr/local/colmena. Esas variables son exportados en ~/.bashrc, pero sigue recibiendo el mismo error.
    • También la tengo en el hadoop-env.sh: exportación HADOOP_CLASSPATH=/usr/local/hbase/hbase-0.94.1.jar:/usr/local/hbase/hbase-0.94.1-test.jar:/usr/local/hbase/conf:/usr/local/hbase/lib/zookeeper-3.4.3.jar:/usr/local/hive/lib/*.jar
    • Ok, estoy asumiendo que usted tiene instalado hbase así. Si es así por favor chang HADOOP_CLASSPATH como sigue exportación HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/usr/hbase/lib y que por favor no borre lo que ya han escrito. Cuidador y de la colmena libs no necesita estar en el classpath. Si esto falla, a continuación, intente copiar hive-commons.jar presente en /usr/local/colmena/lib /usr/local/hadoop/lib (Este no es el camino correcto, pero funciona para algunas personas)

  2. 0

    Resuelto en movimiento:

    export HADOOP_CLASSPATH=/usr/local/hbase/hbase-0.94.1.jar:/usr/local/hbase/hbase-0.94.1-test.jar:/usr/local/hbase/conf:/usr/local/hbase/lib/zookeeper-3.4.3.jar:/usr/local/hive/lib/*.jar:/usr/local/hbase
    

    De /usr/local/hadoop/conf/hadoop-env.sh a ~/.bashrc

    Gracias por la ayuda.

Dejar respuesta

Please enter your comment!
Please enter your name here