2011-04-15 42 views
1

我想檢查我的地圖中的元素的內容 函數,有沒有辦法將變量 的內容打印到屏幕上。當我不能在這些變量中看到有什麼變化時,這個工作的速度非常緩慢。我嘗試過「System.out.println」 ,但這似乎不適用於映射器。打印到屏幕上變量的內部

public void map(Object key, Text value, Context context 
       ) throws IOException, InterruptedException { 

    String line = value.toString(); 
    System.out.println(line + "\n"); 
    String delimiter = "\t"; 
    String[] temp; 

    temp = line.split(delimiter); 

    for(int i =0; i < temp.length ; i++) 
     System.out.println(temp[i]); 

    StringTokenizer itr = new StringTokenizer(value.toString()); 
    while (itr.hasMoreTokens()) 
    { 
     word.set(itr.nextToken().length() + ""); 
     context.write(word, one); 
    } 
} 
+0

您是否嘗試過使用`debugger`查看,而不是變量的內容?另外,我假設你想要在選項卡上「拆分」,對嗎?如果是這樣,我建議使用`「\\ t」`。 – mre 2011-04-15 17:30:45

+0

\\ t ..我用\ t,它工作正常..顯然 – Flethuseo 2011-04-16 22:33:56

回答

2

嘗試使用以下格式
$HADOOP_HOME/bin/hadoop -jar [your_jar_file]
-jar迫使它運行作爲本地工作,將輸出到控制檯運行作業。