2012-12-30 5 views
0

InputFormat에서 CombineFileInputFormatInput을 사용하는 동안 오류 InstantiationException이 발생했습니다.하둡 CombineFileInputFormatInput

Configuration conf = new Configuration(); 
conf.set("fs.default.name", "hdfs://master:54310"); 

Job job = new Job(conf, "WordCount"); 
job.setJarByClass(WordCount.class); 
job.setMapperClass(WordCountMapper.class); 
job.setReducerClass(WordCountReducer.class); 
job.setOutputKeyClass(Text.class); 
job.setOutputValueClass(IntWritable.class); 

job.setInputFormatClass(CombineFileInputFormat.class); 
job.setOutputFormatClass(TextOutputFormat.class); 

FileInputFormat.addInputPath(job, new Path("/user/hduser/CombineFileInputFormatInput")); 
FileOutputFormat.setOutputPath(job, new Path("/user/hduser/CombineFileInputFormatOutputNew2")); 

System.exit(job.waitForCompletion(true) ? 0 : 1); 
+0

이 예외의 스택 추적을 얻을 수 있습니까? – Amar

답변

2

CombineFileInputFormat는 추상 클래스입니다, 당신은 그것을 확장하고 createRecordReader 방법을 구현해야합니다

/** 
* This is not implemented yet. 
*/ 
public abstract RecordReader<K, V> createRecordReader(InputSplit split, 
    TaskAttemptContext context) throws IOException; 

그런 다음 당신의 이름을 확장 한 클래스로 job.setInputFormatClass(..) 전화를 교체하십시오.