eclipse mapreduce错误:unmodifiablemap

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

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

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/map/UnmodifiableMap
at org.apache.hadoop.conf.Configuration$DeprecationContext.<init>(Configuration.java:409)
at org.apache.hadoop.conf.Configuration.<clinit>(Configuration.java:448)
at com.Cameron.WordCount.main(WordCount.java:51)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections.map.UnmodifiableMap
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:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 3 more

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

commons-collections4-4.1.jar
commons-lang-2.6.jar
commons-logging-1.2.jar
guava-11.0.2.jar
hadoop-common-2.7.2.jar
hadoop-mapreduce-client-core-2.7.2.jar
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),将它添加到构建路径中,它应该会运行。

相关问题