addnamedoutput方法中的multipleoutputs错误

mnemlml8  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(302)

我试着使用这个例子中的多重输出
所以我有:

MultipleOutputs.addNamedOutput(job, "out1", TextOutputFormat.class, Text.class, Text.class);
MultipleOutputs.addNamedOutput(job, "out2", TextOutputFormat.class, Text.class, Text.class);

但我得到以下错误:

The method addNamedOutput(Job, String, Class<? extends OutputFormat>, 
Class<?>, Class<?>) in the type MultipleOutputs is not applicable for the 
arguments (Job, String, Class<TextOutputFormat>, Class<Text>, Class<Text>)

有什么想法吗?

ar7v8xwq

ar7v8xwq1#

您应该检查导入的api版本,有两个。您可能应该使用: org.apache.hadoop.mapreduce.lib.output.MultipleOutputs 而不是 org.apache.hadoop.mapred.lib.MultipleOutputs 通常,您希望确保所有导入都是一种类型,因此 mapred 或者 mapreduce .

相关问题