mapreduce程序中找不到类错误

时间:2013-09-02 10:01:15

标签: java eclipse hadoop mapreduce

我是mapreduce编程的初学者。 我正在eclipse中执行mapreduce程序。运行程序时遇到此错误 (我已经包含了commons-logging jar文件)

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/cli/ParseException
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:59)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
    at org.apache.hadoop.streaming.DumpTypedBytes.main(DumpTypedBytes.java:142)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.cli.ParseException
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 3 more

请帮忙!! 提前谢谢

1 个答案:

答案 0 :(得分:0)

与您之前提出的问题相同。缺少图书馆。安装Apache Commons CLIall of the other dependencies。这包括“已使用但未声明的”。

  • 的log4j
  • SLF4J
  • 的Mockito
  • google inject extensions
  • protobuf的
  • 的junit
  • Apache commons IO
  • com.google.inject
  • 泽西
  • 泽西岛:贡献
  • Google Guava
  • Commons Lang
  • JAXB
  • apache commons compress
  • 杰克逊
  • 杰克逊映射器-ASL

或者从lib文件夹中复制所有罐子。