Impossible de trouver ou de charger la classe principale org.apache.hadoop.hdfs.server.namenode.Namenode
Je sais que cela a été demandé avant, mais je ne pouvais pas trouver la solution. J'obtiens l'erreur ci-dessous quand je suis en train de lancer hdfs name node -format
:
Impossible de trouver ou charger la classe principale de org.apache.hadoop.hdfs.serveur.namenode.Namenode
J'ai suivi les instructions de ce site web afin de l'installer sur ma machine centos. La seule différence est que j'ai installé à l'aide de la racine au lieu de hadoopuser comme indiqué dans le lien.
Bashrc
# User specific aliases and functions
export JAVA_HOME=/usr/lib/jvm/jre-1.7.0-openjdk.x86_64/
export HADOOP_INSTALL=/usr/local/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL
export YARN_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native
export PATH=$PATH:$HADOOP_INSTALL/sbin
export PATH=$PATH:$HADOOP_INSTALL/bin
hadoop-env.sh
export JAVA_HOME=/usr/lib/jvm/jre-1.7.0-openjdk.x86_64/
Mapred
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
Yarn-site.xml
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
core-site.xml
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>file:///home/hadoopspace/hdfs/namenode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>file:///home/hadoopspace/hdfs/datanode</value>
</property>
source d'informationauteur Santhosh
Vous devez vous connecter pour publier un commentaire.
Pour ceux qui sont encore en difficulté, vous devez exporter les
HADOOP_PREFIX
variable d'environnement.Ajoutez la ligne suivante à votre
~/.bashrc
fichier:Puis faire
. ~/.bashrc
dans votre terminal et essayez de nouveau, cela va corriger l'erreur.Grâce dcsesq.
brew
installé hadoop 2.6.0 sur Mac OS 10.9.5 (maverick)Ajouter le suivant des variables d'environnement .profil
~/.bash_profile
Source de l' .le fichier de profil de
Exécuter namenode
Boom, me dérangeait presque une demi-journée.
Essayez d'utiliser la commande suivante pour la mise en forme (pas d'espace entre le nom et le nœud & remplacer hdfs commande avec hadoop)
Ressemble lorsque vous exécutez de commande hadoop, pas toutes les catégories (en pots) sont inclus dans votre classpath.
Votre chemin de classe est manquant
hadoop-hdfs-<version>.jar
fichier.J'ai essayé les suggestions ci-dessus, mais j'ai toujours le même message d'erreur. Réglage de la
HADOOP_CLASSPATH
comme suit dans votre~/.bashrc
fonctionné pour moi:export HADOOP_CLASSPATH=$(hadoop classpath):$HADOOP_CLASSPATH
J'ai eu cette erreur aussi. Pour moi le problème était il manquait des fichiers qui n'ont pas été extraites au cours de la première procédure de décompression.
Ce qui a fonctionné pour moi est d'aller dans l'emplacement de votre .tar.gz fichier et le décompresser en utilisant à nouveau:
Être conseillé cela remplace tous vos fichiers sauvegardés, donc si vous avez apporté des changements à tous les fichiers, il serait préférable de créer une copie de votre Hadoop dossier avant la décompression.
J'ai fait face à la même question.
redémarrer le terminal et essayez d'exécuter la commande.
Redémarrage du Terminal est nécessaire pour rendre l'effet immédiat de la variable de chemin d'accès défini à l'intérieur .bashrc fichier
Ajouter
à la fin de
etc/hadoop/hadoop-env.sh
fichier dans le hadoop répertoire d'installation. Ce qui permet de la jvm pour localiser les fichiers de classe.vérifier et régler la valeur de
HADOOP_PREFIX
à$HADOOP