Hadoop运行wordcount时报classnotfound错误的一个原因

时间:2022-05-04
本文章向大家介绍Hadoop运行wordcount时报classnotfound错误的一个原因,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

我们在按照网上铺天盖地的教程开始运行wordcount时,有时会得到一个报错。如下所示

/usr/local/hadoop-1.2.1/bin# ./hadoop jar /home/ftp/temp/wordcount.jar WordCount /home/input /home/output                  
Exception in thread "main" java.lang.ClassNotFoundException: WordCount
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:348)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:153)

他会提示classnotfound。

这种情况下,我们看到他提示找不到wordcount这个类,原因是

你在把wordcount打包成jar文件的时候,设置了自己的package。所以jvm找不到它了。

输入命令时,把package路径输入即可“

usr/local/hadoop-1.2.1/bin# ./hadoop jar /home/ftp/temp/wordcount.jar com.myPackage.WordCount /home/input /home/output