eclipse mapreduce错误:unmodifiablemap

xvw2m8pv  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(432)

因此,我是hadoop和mapreduce的新手,我正在尝试创建一个简单的wordcount程序。但是,在运行它时,我遇到了一个错误:

  1. Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/map/UnmodifiableMap
  2. at org.apache.hadoop.conf.Configuration$DeprecationContext.<init>(Configuration.java:409)
  3. at org.apache.hadoop.conf.Configuration.<clinit>(Configuration.java:448)
  4. at com.Cameron.WordCount.main(WordCount.java:51)
  5. Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections.map.UnmodifiableMap
  6. at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
  7. at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
  8. at java.security.AccessController.doPrivileged(Native Method)
  9. at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
  10. at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
  11. at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
  12. at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
  13. ... 3 more

我在网上浏览了一下,原因似乎是commons collection jar没有包含在构建路径中,尽管我的构建路径中包含了它,但我仍然得到了错误。我尝试过清理项目并重新启动eclipse,但没有任何效果,因此非常感谢您的帮助。我的生成路径配置如下:

  1. commons-collections4-4.1.jar
  2. commons-lang-2.6.jar
  3. commons-logging-1.2.jar
  4. guava-11.0.2.jar
  5. hadoop-common-2.7.2.jar
  6. hadoop-mapreduce-client-core-2.7.2.jar
  7. JRE System Library [JavaSE-1.7]
js5cn81o

js5cn81o1#

我也遇到了类似的错误。我正在运行一个使用LunaEclipse的Cloudera5.8教程(https://github.com/hortonworks/hadoop-tutorials/blob/master/community/t09_write_and_run_your_own_mapreduce_java_program_poll_result_analysis.md).
您需要apache commons集合» 3.2.1(不是4.1),将它添加到构建路径中,它应该会运行。

相关问题