2011-08-05 18 views
0

我想寫一個示例程序,可以調用使用「SequenceFilesFromDirectory」的主要方法,它旨在將一組文件轉換爲序列文件格式。在我的代碼中使用「SequenceFilesFromDirectory」的問題

public class TestSequenceFileConverter { 
public static void main(String args[]){ 
String inputDir = "inputDir"; 
String outputDir = "outoutDir"; 
SequenceFilesFromDirectory.main(new String[] {"--input", 
     inputDir.toString(), "--output", outputDir.toString(), "--chunkSize", 
     "64", "--charset",Charsets.UTF_8.name()}); 
} 
} 

但Eclipse的告訴我,我所做的是錯的,下面的錯誤消息,在這條線

多個標記 - 語法錯誤令牌「主」,=預計 令牌之後 - SequenceFilesFromDirectory解決不了

我覺得我沒有使用筆 - 令牌(S),錯位構建體 語法錯誤他的方法正確,但我不知道如何解決它?非常感謝。

以下是SequenceFilesFromDirectory定義的方式。該API鏈接SequenceFilesFromDirectory是http://search-lucene.com/jd/mahout/utils/org/apache/mahout/text/SequenceFilesFromDirectory.html

+0

您是否具有'SequenceFilesFromDirectory'的相關導入語句,並且它是否在您的類路徑中? –

+0

我將SequenceFilesFromDirectory的每個import語句複製到我的TestSequenceFileConverter的java代碼中 – user873766

回答

0

我的猜測是,你錯過了從文件的第一部分導入線:

import org.apache.mahout.text.SequenceFilesFromDirectory; 
+0

嗨,我剛剛添加了這個import語句,但錯誤消息更改爲「未處理的異常類型異常」。 – user873766

+0

@ user873766:好的,現在你需要自己捕捉異常,或者聲明'main'方法拋出'Exception'。你以前做過任何Java嗎?堆棧溢出對於特定問題很有用,但它不能代替介紹性的書籍或教程。 –

+0

@John,我在學習java的同時嘗試使用Mahout。我通過添加「try ... catch」來解決這個問題。令我困惑的是,爲什麼在這種情況下需要「try ... catch」。 – user873766

0

我覺得你使用SequenceFilesFromDirectory目的是DOC文件轉換爲序列文件。如果是這樣,最好調用run()/ runSequential()/ runMapReduce()方法創建SequenceFilesFromDirectory對象,因爲SequenceFilesFromDirectory.main()內部調用haddop ToolRunner.run()方法進行處理。 而SequenceFilesFromDirectory的運行方法進行實際處理。