簡體   English   中英

Java錯誤,java.lang.NoClassDefFoundError:Hadoop中的org / myorg / WordCount

[英]Java Error, java.lang.NoClassDefFoundError: org/myorg/WordCount in Hadoop

我是Hadoop的新手。 我遵循了有關如何在hadoop中創建單詞計數程序的基礎教程。 一切都很好。 然后,我嘗試創建自己的map reduce,並將其放在單獨的jar文件中。 當我嘗試運行程序時,它給了我這個錯誤:

shean@ubuntu-PC:~/hadoop/bin$ hadoop jar ../weather.jar weather.Weather /user/hadoop/weather_log_sample.txt /user/hadoop/output
Warning: $HADOOP_HOME is deprecated.

Exception in thread "main" java.lang.NoClassDefFoundError: org/myorg/WordCount
    at weather.Weather.main(Weather.java:45)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
Caused by: java.lang.ClassNotFoundException: org.myorg.WordCount
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
    ... 6 more

但是問題是,它正在尋找WordCount類...

如果我沒記錯的話,您會錯過jar wordcount.jar 。請將其添加到build path.

我的建議:您首先將“包”路徑刪除。 這使得不報告NoClassDefFoundError錯誤更加容易。 javac編譯時間:javac-classpath“ $ HADOOP_HOME / hadoop-core-1.2.0.jar:$ HADOOP_HOME / lib / commons-cli-1.2.jar” -d。 /天氣

litianmin@gmail.com

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM