He seguido «http://codesfusion.blogspot.com/2013/10/setup-hadoop-2x-220-on-ubuntu.html» para instalar hadoop en ubuntu. Pero, al comprobar la versión de hadoop me sale el siguiente error:

Error: no se Pudo encontrar o de carga de la clase principal
org.apache.hadoop.util.VersionInfo

También, cuando trato: hdfs namenode -formato de

Me sale el siguiente error:

Error: no se Pudo encontrar o de carga de la clase principal
org.apache.hadoop.hdfs.servidor.namenode.NameNode

De la versión de java que se usa es:

java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.12.04.2)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
  • posibles duplicados de ¿Qué significa «no se Pudo encontrar o carga principal de la clase» media?
  • Mi ruta de acceso está configurado. Yo no puedo averiguar lo que está mal.
  • No tienen preenvasados binarios? Que suele ser la manera de ir.
  • no es con las aplicaciones de Java. Ciertamente no en estos días.
  • No tengo Ubuntu aquí, pero tengo estos paquetes en Fedora: $ yum search hadoop da: hadoop-client.noarch, hadoop-common.noarch, hadoop-hdfs.noarch, hadoop-mapreduce.noarch y montón de otras cosas.
  • Hay un PPA: sudo add-apt-repository ppa:hadoop-ubuntu/estable sudo apt-get update && sudo apt-get upgrade sudo apt-get install hadoop de askubuntu.com/questions/144433/how-to-install-hadoop.
  • Podría usted capaz de resolver el problema? mismo problema para mí
  • Resulta que era debido a una mala Cloudera instalación que yo había intentado antes. Hice un nuevo Ubuntu instalar y, a continuación, seguido de michael-noll.com/tutorials/… paso a paso y funcionó. 2.2.0 no funciona correctamente por mí. He utilizado 1.2.1 para mi proyecto, y funcionó muy bien.
  • Esos son los paquetes … no binarios. Se pueden incluir archivos binarios, pero para una aplicación Java lo más probable es que no.

InformationsquelleAutor usb | 2014-01-19

9 Comentarios

  1. 11

    Es un problema de variables ambientales, el programa de instalación. Al parecer, yo no encontrar uno que puede trabajar hasta AHORA. Yo estaba tratando de 2.6.4. Aquí es lo que debe hacer

    export HADOOP_HOME=/home/centos/HADOOP/hadoop-2.6.4
    export HADOOP_INSTALL=$HADOOP_HOME
    export HADOOP_MAPRED_HOME=$HADOOP_HOME
    export HADOOP_COMMON_HOME=$HADOOP_HOME
    export HADOOP_HDFS_HOME=$HADOOP_HOME
    export YARN_HOME=$HADOOP_HOME
    export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
    export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
    export HADOOP_CONF_DIR=$HADOOP_HOME
    export HADOOP_PREFIX=$HADOOP_HOME
    export HADOOP_LIBEXEC_DIR=$HADOOP_HOME/libexec
    export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH
    export HADOOP_CONF_DIR=$HADOOP_PREFIX/etc/hadoop

    Añadir estos a su .bashrc y no te olvides de hacer

    source ~/.bashrc

    Yo creo que tu problema será resuelto, como fue la mía.

  2. 7

    Que probablemente no se siguen las instrucciones correctamente. Aquí están algunas cosas para probar y nos ayudan a /a diagnosticar esta:

    • En el shell que se ejecutó hadoop version, ejecutar export y nos muestra la lista de variables de entorno correspondientes.

    • Nos muestran lo que usted pone en la /usr/local/hadoop/etc/hadoop/hadoop-env.sh archivo.

    • Si ninguno de los de la anterior, le /nos de pistas, a continuación, busque y utilice un editor de texto (temporalmente) modificar el hadoop contenedor de secuencia de comandos de shell. Agregar la línea «set -xv» en algún lugar cerca del principio. A continuación, ejecute hadoop version, y nos muestran lo que produce.

    • Tengo estos en la ejecución de la exportación: declarar -x CLASSPATH=»/usr/local/hadoop/share/hadoop/común» declarar -x HADOOP_COMMON_HOME=»/usr/local/hadoop» declarar -x HADOOP_HDFS_HOME=»/usr/local/hadoop» declarar -x HADOOP_INSTALL=»/usr/local/hadoop» declarar -x HADOOP_MAPRED_HOME=»/usr/local/hadoop» declarar -x CASA=»/home/hduser» declarar -x JAVA_HOME=»/usr/lib/jvm/jdk/» declarar -x PATH=»/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/hadoop/bin:/usr/local/hadoop/sbin» declarar -x YARN_HOME=»/usr/local/hadoop»
    • Sólo he añadido «export JAVA_HOME=/usr/lib/jvm/jdk/» a hadoop-env.sh y el resto es la forma en que fue.
    • ¿Se requiere de todo «hadoop-env.sh» archivo?
    • Nada de «saltos» de sus respuestas a los dos primeros puntos. Ahora, por favor intente la tercera. Y compruebe que «/usr/local/hadoop/share/hadoop/común» contiene la hadoop JAR archivos.
    • Para lo que vale, me enfrentaba a los mismos problemas y resultó ser una forma inadecuada de desempaquetar .archivo tar. La esperanza ayuda a todos aquellos que buscan una solución para este problema.
  3. 3

    Me estaba enfrentando el mismo problema. Aunque puede parecer tan simple, pero se llevó 2 horas de mi tiempo. He intentado de todas las cosas de arriba, pero no ayuda.

    Acabo de salir de la shell que estaba y lo intentó de nuevo al iniciar sesión en el sistema de nuevo. Entonces funcionaban las cosas!

  4. 2

    Añadir esta línea a ~/.bash_profile trabajó para mí.

    export HADOOP_PREFIX=/<where ever you install hadoop>/hadoop

    Tan sólo:

    1. $ sudo abrir ~/.bash_profile, a continuación, agregue la mencionada línea de
    2. $ source ~/.bash_profile

    Espero que esto ayude (:

  5. 1

    Intente comprobar:

    • JAVA_HOME, todo el CAMINO variables relacionadas en Hadoop config
    • de ejecución: . ~/.bashrc (nota del punto en adelante) para hacer esas variables disponibles en su entorno. Parece que la guía no menciona esto.
    • Lo siento, pero ¿puede explicar eso? He comprobado .bashrc para mi hduser y tiene todas las rutas que se ha mencionado en el tutorial. Me estoy perdiendo algo? Yo también corrió . ~/.bashrc
    • Quiero decir que en el tutorial después de que hace $vi .bashrc y conjuntos de todas las variables que realmente no ejecute el archivo por lo que las variables no sería exportado a la sesión actual. Usted tiene que ejecutar en el mismo terminal en el que ejecutar otros comandos después hadoop. Como alternativa a entrar o reiniciar el sistema. Sólo estoy adivinando, tal vez hay otra razón para este error.
    • Gracias por tu ayuda, pero he intentado entrar nuevamente y reiniciar el sistema. No parece funcionar. También no puedo encontrar en cualquier otro post con el mismo error, por lo que creo que debe ser algo muy trivial.
    • También puede intentar ejecutar hadoop comando desde el directorio: /usr/local/hadoop-2.2.0/share/hadoop/common/. Si hay un problema con la ruta de clases puede ser fijo.
    • hadoop debe ser una secuencia de comandos de shell. Se puede ver cómo hadoop se invoca en ella? Algo a lo largo de las líneas de utilizar hadoop-common-2.2.0.jar
    • Pruebe también hadoop classpath
    • Es, definitivamente, un classpath problema. Java no puede encontrar los Frascos que han requerido de clases. Esto podría ser debido a que ésta está incompleta (añadir más carpetas?) o porque la base de la ruta de acceso utilizada en una secuencia de comandos en algún lugar que está mal. Hizo mover el directorio como por ejemplo en uno de los primeros pasos?: sudo mv hadoop-2.2.0 hadoop. Le sugiero que rehacer desde cero 🙂
    • Me sale esto en el funcionamiento de hadoop classpath: /etc/hadoop/conf:/usr/lib/hadoop/lib/*:/usr/lib/hadoop/.//*:/usr/lib/hadoop-hdfs/./:/usr/lib/hadoop-hdfs/lib/*:/usr/lib/hadoop-hdfs/.//*:/usr/lib/hadoop-yarn/lib/*:/usr/lib/hadoop-yarn/.//*:/usr/lib/hadoop-0.20-mapreduce/./:/usr/lib/hadoop-0.20-mapreduce/lib/*:/usr/lib/hadoop-0.20-mapreduce/.//*
    • Ya lo hice todo desde cero una vez 🙁 También, tengo varias versiones de Java. Pero el defecto de la JVM se establece a lo que el tutorial se requiere.
    • Me hizo mover el directorio, exactamente como se menciona en el tutorial.
    • Que extraño, ¿tiene /usr/lib/hadoop/ directorio? No se tienen los archivos jar? find /usr/lib/hadoop/ -name "*.jar". Creo que debe ser /usr/local/hadoop/lib lugar (no estoy seguro). Si el primero no tiene los frascos y segundo no tendrá que encontrar donde se establece esta ruta en los scripts de inicio y cambiar. Este podría ser.

  6. 1

    Tengo el mismo problema con hadoop 2.7.2
    después he aplicado el truco demostrado que yo era capaz de empezar a hdfs, pero más tarde descubrí que el alquitrán archivie que estaba usando era faltan algunas piezas importantes. Para descargar la 2.7.3 todo funcionó como se supone que funciona.

    Mi primera sugerencia es la de descargar de nuevo el tar.gz en la misma versión o una versión mayor.

    Si quiere continuar leyendo… esto cómo he resuelto el problema…
    Después de una nueva instalación de hadoop no era capaz de encontrar los frascos.
    Hice este pequeño truco:

    He localizado donde los frascos son

    Hice un enlace simbólico de la carpeta a la
    $HADOOP_HOME/share/hadoop/común

    ln -s $HADOOP_HOME/share/hadoop/kms/tomcat/webapps/kms/WEB-INF/lib $HADOOP_HOME/share/hadoop/common 

    para la versión de comandos que usted necesita hadoop-common-2.7.2.jar, esto me ayudó a encontrar donde los frascos donde se almacena.

    Después de que…

    $ bin/hadoop version 
    Hadoop 2.7.2
    Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r b165c4fe8a74265c792ce23f546c64604acf0e41
    Compiled by jenkins on 2016-01-26T00:08Z
    Compiled with protoc 2.5.0
    From source with checksum d0fda26633fa762bff87ec759ebe689c
    This command was run using /opt/hadoop-2.7.2/share/hadoop/kms/tomcat/webapps/kms/WEB-INF/lib/hadoop-common-2.7.2.jar

    De curso de cualquier hadoop /hdfs comando funciona ahora.

    Estoy de nuevo un hombre feliz, sé que esto no es un incentivo para su solución, pero funciona, al menos para mí.

  7. 0

    He añadido el entorno de las variables descritas anteriormente, pero aún no funciona. Ajuste de la HADOOP_CLASSPATH de la siguiente manera en mi ~/.bashrc trabajado para mí:

    export HADOOP_CLASSPATH=$(hadoop classpath):$HADOOP_CLASSPATH

  8. 0

    Tengo ese error , me fijo que al editar ~/.bashrc
    como siga

    export HADOOP_HOME=/usr/local/hadoop
    export PATH=$HADOOP_HOME/bin:$PATH

    a continuación, abrir la terminal y escribir este comando

    source ~/.bashrc

    a continuación, compruebe

    hadoop version
    • Seguido los pasos, no funciona para mí.
    • Abrir nueva Terminal y comprobar de nuevo
    • gracias pero ya lo intenté y no funcionó.
    • compruebe los permisos de la carpeta de hadoop
  9. 0

    He utilizado

    export PATH=$HADOOP_HOME/bin:$PATH

    Lugar de

    export PATH=$PATH:$HADOOP_HOME/bin

    A continuación, a mí me funcionó!

    • Que no se debe cambiar nada …

Dejar respuesta

Please enter your comment!
Please enter your name here