2014-08-27 53 views
1

當基於網頁http://avro.apache.org/docs/1.7.7/mr.html試圖運行MapReduceColorCount(新的MapReduce API),我得到如下:的NoClassDefFoundError,不能運行MapReduceColorCount(Avro的1.7.7)

[[email protected] ~]$ hadoop jar avroColorCount.jar exos.MapReduceColorCount2 inavro01 outavro01 
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/avro/mapreduce/AvroKeyInputFormat 
    at exos.MapReduceColorCount2.run(MapReduceColorCount2.java:71) 
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) 
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84) 
    at exos.MapReduceColorCount2.main(MapReduceColorCount2.java:86) 
    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:606) 
    at org.apache.hadoop.util.RunJar.main(RunJar.java:212) 

的代碼,我得到的MRv1版本AvroMapper的NoClassDefFoundError。 對於我測試過的其他Avro程序,我得到了與AvroJob相同的錯誤。

你知道這些類型的錯誤的根本原因? 注意:無法粘貼我的POM文件,顯示非常糟糕,嘗試在代碼引用之間但沒有工作。

回答

1

下載avro-mapred-1.7.1.jar並將其添加到您的類路徑中。

+0

非常感謝你,只是爲了完成信息(對於我這樣的初學者),我已經按照程序http://www.wikihow.com/Add-JARs-to-Project-Build-Paths-in-解釋Eclipse-%28Java%29在使用Eclipse時添加Jars。 – guzu92 2014-08-27 22:07:30

相關問題