我正在尝试按照Hadoop In Action中的指示在伪分布式模式下运行它。它在我使用本地/独立模式时运行。
现在它似乎无法找到jar文件的路径。
cd $HADOOP_HOME
jps
17559 JobTracker
17466 SecondaryNameNode
17791 TaskTracker
16993 NameNode
17942 Jps
bin/hadoop hadoop-examples-1.0.3.jar wordcount
Warning: $HADOOP_HOME is deprecated.
Exception in thread "main" java.lang.NoClassDefFoundError: hadoop-examples-1/0/3/jar
Caused by: java.lang.ClassNotFoundException: hadoop-examples-1.0.3.jar
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:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: hadoop-examples-1.0.3.jar. Program will exit.
我的CLASSPATH设置为$ HADOOP_HOME
有什么想法吗?
答案 0 :(得分:2)
两件看起来不正确的事情:
您还应该运行DataNode进程检查日志以查看发生了什么。
正确使用的命令是bin / hadoop jar hadoop-examples-1.0.3.jar wordcount
您还应将HADOOP_CONF_DIR设置为指向包含'hdfs-site.xml'和'core-site.xml'的目录