Hadoop运行job的时候抛出异常如下:
java.lang.NullPointerException
at org.apache.hadoop.io.serializer.SerializationFactory.getSerializer(SerializationFactory.java:73)
at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.<init>(MapTask.java:823)
at org.apache.hadoop.mapred.MapTask$NewOutputCollector.<init>(MapTask.java:557)
核实代码如下:
job.setOutputValueClass(SequenceFileOutputFormat.class);
job.setInputFormatClass(SequenceFileInputFormat.class);
查看SequenceFileOutputFormat源码发现此类没有实现序列号接口,output的数据格式需要实现序列号接口
本文探讨了Hadoop运行job时出现的NullPointerException异常,并详细分析了异常产生的原因。通过检查SequenceFileOutputFormat源码,发现该类未实现序列化接口,从而导致job输出时发生错误。
1394

被折叠的 条评论
为什么被折叠?



