2

私の map reduce プログラムには、外部の jar ファイルが必要です。これらの外部jarファイルを提供するために「-libjars」オプションを使用しています-

Hadoop が提供する Tool、Configured、および ToolRunner Utilities を使用しました。

  public static void main(String[] args)throws Exception {
         int res = ToolRunner.run(newConfiguration(), new MapReduce(),args);
         System.exit(res);
  }

  @Override
  public int run(String[] args) throwsException {
         // Configuration processed by ToolRunner
   Configuration conf = getConf();
   Job job = new Job (conf, "MapReduce");
   ....
   }

ジョブを実行しようとしたとき -

$ Hadoop jar myjob.jar jobClassName -libjars external.jar

次の例外をスローしました。

12/11/21 16:26:02 INFO mapred.JobClient: タスク ID: 試行_201211211620_0001_m_000000_1、ステータス: 失敗エラー: java.lang.ClassNotFoundException: org.joda.time.format.DateTimeFormatterBuilder

私はしばらくそれを解決しようとしてきました。これまでのところ何も機能していないようです。CDH 4.1.1 を使用しています。

4

2 に答える 2

0

external.jar の完全修飾絶対ファイル名を使用してコマンドを呼び出してみてください。また、不足しているクラスとそのすべての必須クラスが external.jar にあることを確認します。

于 2012-11-22T00:06:47.607 に答える