2011-08-05 10 views
0

"SequenceFilesFromDirectory"のmainメソッドを使用して呼び出すことができるサンプルプログラムを作成しようとしています。これは一連のファイルをシーケンスファイル形式に変換することを目的としています。私のコードで "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は私がやったことは、次のエラーメッセージで間違っていたことを私に告げるこのライン で

複数のマーカー - 構文エラートークンの「メイン」、=この トークンの後に期待 - トークンの構文エラー(s)は、見当違い構築物(S) - SequenceFilesFromDirectoryが

を解決することはできません私はトンを使用していないと思います彼の方法は正しく、しかし私はそれを修正する方法を知らない?どうもありがとう。

SequenceFilesFromDirectoryの定義は次のとおりです。

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

'SequenceFilesFromDirectory'に関連するimport文がありますか?これはクラスパスにありますか? –

+0

SequenceFilesFromDirectoryのすべてのインポートステートメントをTestSequenceFileConverterのjavaコードにコピーしました – user873766

答えて

0

私の推測では、あなたのファイルの最初のセクションからインポート行が欠落しているということですシーケンスファイル。その場合は、SequenceFilesFromDirectory.main()が処理のためにhaddop ToolRunner.run()メソッドを内部的に呼び出しているため、run()/ runSequential()/ runMapReduce()メソッドを呼び出す方がSequenceFilesFromDirectoryのオブジェクトを作成する方がよい。 SequenceFilesFromDirectoryのrunメソッドは実際の処理を行います。

+0

こんにちは、このインポートステートメントを追加しましたが、エラーメッセージが「未処理の例外タイプ例外」に変更されました。 – user873766

+0

@ user873766:さて、今度はあなた自身で例外をキャッチするか、 'main'メソッドが' Exception'を投げることを宣言する必要があります。以前にJavaをやったことはありますか? Stack Overflowは特定の質問には最適ですが、入門書やチュートリアルの代わりにはなりません。 –

+0

@ジョン、私はMahoutを使用しようとしている間、javaを学んでいます。私はこの問題を "try ... catch"を追加して解決しました。私が混乱しているのは、このシナリオでは "try ... catch"が必要な理由です。 – user873766

関連する問題