执行MapReduce 程序的时候报错,如下
2019-07-12 00:51:53,868 INFO mapreduce.Job: Task Id : attempt_1562862697087_0005_m_000003_1001, Status : FAILED
[2019-07-12 00:51:52.484]Exception from container-launch.
Container id: container_1562862697087_0005_02_000011
Exit code: 127
[2019-07-12 00:51:52.490]Container exited with a non-zero exit code 127. Error file: prelaunch.err.
Last 4096 bytes of prelaunch.err :
Last 4096 bytes of stderr :
/bin/bash: /bin/java: No such file or directory
很好理解 /bin/java 无法执行
在shell 终端执行 /bin/java 无法执行
需要创建一个/bin/java 的软连接 实际指向 jdk 真实目录
我的jdk真实目录是 /usr/local/jdk1.8.0_112/
所以在shell 终端执行
ln -s /usr/local/jdk1.8.0_112/bin/java /bin/java
再执行 /bin/java
发现命令可以运行
如果hadoop是集群环境,需要在每台机器上创建软连接
再执行 MapReduce程序 就不会报错了