我对Hadoop很新。我设置了单节点集群hadoop-1.0.4,我也是这个例子的jar - 来自apache hadoop web的hadoop-exaples-1.0.4.jar。使用jar和命令“hadoop jar hadoop-examples-1.0.4.jar wordcount'input-dir''output-dir'”我能够运行简单的wordcount问题。
问题::现在我将apache hadoop网站中找到的wordcount问题的代码复制到eclipse并导出一个jar文件,该文件现在只包含WordCount类,我将jar重命名为wc.jar但现在使用相同的命令“hadoop jar wc.jar wordcount'input-dir''output-dir'”...它给出了错误::“线程中的异常”main“java.lang.ClassNotFoundException:WordCount”....我重新检查代码,并确保类名是WordCount ...但它仍然给出相同的错误....我完全搞糊涂该怎么办?希望你能帮忙。这是我用来制作jar的代码链接.... http://wiki.apache.org/hadoop/WordCount
答案 0 :(得分:1)
尝试使用包路径:
hadoop jar wc.jar org.myorg.WordCount 'input-dir' 'output-dir'
答案 1 :(得分:0)
我补充说:
job.setjarByClass(org.myorg.WordCount.class);
并按照Erik所说的命令运行:
hadoop jar wc.jar org.myorg.WordCount 'input-dir' 'output-dir'
有效!!