Spark 1.6-未能在 hadoop 二进制路径中找到 winutils 二进制文件

2022-09-04 06:51:23

我知道有一个与此非常相似的帖子(未能在hadoop二进制路径中找到winutils二进制文件),但是,我已经尝试了建议的每个步骤,并且仍然出现相同的错误。

我正在尝试在Windows 7上使用Apache Spark版本1.6.0来执行此页面上的教程 http://spark.apache.org/docs/latest/streaming-programming-guide.html,特别是使用此代码:

./bin/run-example streaming.JavaNetworkWordCount localhost 9999

但是,此错误不断出现:enter image description here

阅读此帖子后,无法在hadoop二进制路径中找到winutils二进制文件

我意识到我需要 winutils.exe 文件,所以我用它下载了一个 hadoop 二进制 2.6.0,定义了一个名为 HADOOP_HOME 的环境变量:

 with value C:\Users\GERAL\Desktop\hadoop-2.6.0\bin  

并将其放在路径上,如下所示:%HADOOP_HOME%

然而,当我尝试代码时,仍然存在相同的错误。有谁知道如何解决这个问题?


答案 1

如果你在Windows上运行Hadoop的Spark,那么你需要确保你的Windows Hadoop安装正确安装。要运行 spark,您需要在 hadoop 主目录 bin 文件夹中包含 winutils.exe 和 winutils.dll。

我请你先试试这个:

1)您可以在下面的链接中下载.dll并从捆绑包中.exe fils。

https://codeload.github.com/sardetushar/hadooponwindows/zip/master

2)将winutils.exe和winutils.dll从该文件夹复制到您的$HADOOP_HOME/bin。

3) 在 spark-env.sh 或命令中设置 ,然后添加到 。HADOOP_HOMEHADOOP_HOME/binPATH

,然后尝试运行。

如果您需要任何hadoop安装帮助的帮助,有一个不错的链接,您可以尝试一下。

http://toodey.com/2015/08/10/hadoop-installation-on-windows-without-cygwin-in-10-mints/

但是,这可以等待。您可以尝试前几个步骤。


答案 2

从这里下载 bin 文件 Hadoop Bin 然后System.setProperty("hadoop.home.dir", "Desktop\bin");


推荐