2016-11-16 112 views
0

我在運行MapReduce WordCount作業時出現一些錯誤。FAILED錯誤:java.io.IOException:所有收集器的初始化失敗

Error: java.io.IOException: Initialization of all the collectors failed. Error in last collector was :class wordcount.wordmapper at org.apache.hadoop.mapred.MapTask.createSortingCollector(MapTask.java:414) at org.apache.hadoop.mapred.MapTask.access$100(MapTask.java:81) at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:415) atorg.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1693)at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158) Caused by: java.lang.ClassCastException: class wordcount.wordmapperat java.lang.Class.asSubclass(Class.java:3165)at org.apache.hadoop.mapred.JobConf.getOutputKeyComparator(JobConf.java:892) at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.init(MapTask.java:1005) at org.apache.hadoop.mapred.MapTask.createSortingCollector(MapTask.java:402)

+1

分享你的wordcount code –

回答

0

運行mapredue作業時發生同樣的事情。請導入正確的Text類。

如果導入下面的進口,你會得到錯誤:

import com.sun.jersey.core.impl.provider.entity.XMLJAXBElementProvider.Text; 

它改變了這一點。

import org.apache.hadoop.io.Text; 
0

你的類必須有一個默認的構造函數,如果你定義了任何參數的構造函數的默認構造函數自動被刪除。你應該明確地定義這個構造函數。你能顯示你的代碼片段嗎?

Class SampleClass 
{ 
    int a; 
    public SampleClass(int param) 
    { 
    a = param; 
    } 

    public SampleClass() 
    { 
    } 
} 
相關問題