解决Hadoop报错:Could not locate executable null\bin\winutils.exe in the Hadoop binaries.

解决Hadoop报错:Could not locate executable null\bin\winutils.exe in the Hadoop binaries.

  • 程序报错
  • 解决办法一
  • 解决办法二
  • 参考

程序报错

菜鸟记录学习Spark过程中的诸多坑,开始学习Spark时,按照教程运行Spark项目Local模式时IDEA出现Hadoop报错:Could not locate executable null\bin\winutils.exe in the Hadoop binaries. 上csdn一查觉得是个非常入门的问题,按照参考方法下载hadoop-bin,然后添加环境变量,重启测试没有用,一时语塞,小白就是这么好欺负。
解决Hadoop报错:Could not locate executable null\bin\winutils.exe in the Hadoop binaries._第1张图片

解决办法一

直接在Scala类中添加语句设置hadoop.home.dir

//  Did not find winutils.exe: java.io.FileNotFoundException: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset.
    System.setProperty("hadoop.home.dir", "D:\\Application\\Java\\winutils\\hadoop-3.0.0")

注意不要习惯在绝对地址上加bin,直接是目录地址就行,调用hadoop时程序会自动去该地址下的bin中去找winutils.exe。

解决办法二

在IDEA中配置RunConfiguration,添加HADOOP_HOME变量:
解决Hadoop报错:Could not locate executable null\bin\winutils.exe in the Hadoop binaries._第2张图片

参考

[1].Stackoverflow关于此项报错的解答参考
[2].CSDN关于此项报错的解答参考
[3].hadoop-x.x.x/bin各个版本的github下载地址

你可能感兴趣的:(构架,spark,hadoop,scala,大数据)