是因为写mr有3种方法:1、main方法里面直接写。2、用ToolRunnr加上Configured。3、使用任务工作链。
有这么多的方式所以团队开发不统一,那为了统一mr编写规则,所以在定义了BaseMR并且里面定义了抽象方法
public abstract Job getJob(Configuration conf)
可以在里面调用Job job = Job.getInstance(conf,getJobNameWithTaskID()); 生成任务的Job
当然如果你想自由不规范你可以在任意地方,比如main方法中调用Job job = Job.getInstance(conf,getJobNameWithTaskID());生成你的Job。但是别人也像你一样随机3选1,那你们团队以后看彼此代码的时候是不是心里都在骂娘。
