我用XMLFileInputFormat
扩展了一些FileInputFormat
。问题是当我在job
上设置这个类时
job.setInputFormatClass(XMLFileInputFormat.class);
我得到一些错误,告诉它希望这个类扩展or.apache.hadoop.mapreduce.InputFormat
(但我检查了FileInputFormat
实现InputFormat
)
这个类是这样设置的
public class XMLFileInputFormat extends FileInputFormat<NullWritable, BytesWritable> {
@Override
protected boolean isSplitable(FileSystem fs, Path filename) {
return false; }
@Override
public RecordReader<NullWritable, BytesWritable> getRecordReader(
InputSplit split, JobConf job, Reporter reporter) throws IOException {
return new XMLFileRecordReader((FileSplit) split, job);
}
}
如何正确设置InputFormat
?
请验证导入语句中的包结构。应该是org.apache.hadop.mapreduce.FileInputFormat.
您本可以导入:org.apache.hadoop.mapred.FileInputFormat