2017-01-12 12 views
0

逆インデックスを構築していて、context.writeを使用しているときにreduceで現在nullポインタ例外が発生しています。なぜ誰にスポットを付けることができますか私は前にそれをやったことがないので、シリアライズと何か関係がありますか? hをプリントアウトするとエラーが発生します。私はスタックトレースせずにシリアライズに関して直接見つけることができHadoop Reduceメソッドでのヌルポインタ例外?

+1

あなたの質問にスタックトレースを追加することができれば幸いです。 –

+0

@ThomasJungblutあなたが提案したコードを、setClassメソッド以外に変更しました。どこから取り除くのですか? –

+0

スタックトレースとコードを削除する理由を編集しましたか? – vefthym

答えて

0

私は二回、データセット上で繰り返していたので(それがあった行をオンint df = Iterables.size(values);は私をだました)。イテレータはリセットされていませんでしたので、初期化さえしていなかったデータにアクセスしようとしたので、最終的にはnullポインタを打ちました。

0

2つのこと:

  1. HMapValueは、デフォルトコンストラクタを必要とする、それは1必要にデフォルトコンストラクタで
  2. なしにHadoopで作成することはできません正しくArrayListWritable(nullでないを初期化し、それが正しくデシリアライズするsetClass方法を必要としている。
関連する問題