I have figured out the issue, there is a jira for it:https://issues.apache.org/jira/browse/MAPREDUCE-5655
I just added YARNRunner.java & MRApps.java to my project .
It also reqires to add the following property to mapred-site.xml on the windows box, so that the job launcher knows, that the job runner will be a linux:
<property>
<name>mapred.remote.os</name>
<value>Linux</value>
<description>Remote MapReduce framework's OS, can be either Linux or Windows</description>
</property>
And MapReduce is running fine now.
Also Copy org.apache.hadoop.util.Shell.java into your project.
You can comment out the below line,to remove the winutils.exe Error.
throw new IOException("Could not locate executable " + fullExeName + " in the Hadoop binaries.");
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…