我通过FileInputFormat
扩展了一些XMLFileInputFormat
。问题是,当我在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
?
答案 0 :(得分:0)
请在import语句中验证包结构。它应该是 org.apache.hadoop.mapreduce.FileInputFormat。
您可以导入: org.apache.hadoop.mapred.FileInputFormat