執行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程序 就不會報錯了