java.io.IOException:找不到Hadoop二进制文件中的可执行文件null \ bin \ winutils.exe

时间:2015-07-01 13:54:22

标签: windows hadoop cygwin hbase

$ bin/start-hbase.sh

2015-07-01 19:21:34,971 ERROR [main] util.Shell: Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
        at org.apache.hadoop.util.Shell.getQualifiedBinPath(Shell.java:355)
        at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:370)
        at org.apache.hadoop.util.Shell.<clinit>(Shell.java:363)
        at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:78)
        at org.apache.hadoop.conf.Configuration.getStrings(Configuration.java:1699)
        at org.apache.hadoop.hbase.zookeeper.ZKConfig.makeZKProps(ZKConfig.java:113)
        at org.apache.hadoop.hbase.zookeeper.ZKServerTool.main(ZKServerTool.java:45)

1 个答案:

答案 0 :(得分:1)

你缺少winutils.exe,一个hadoop二进制文件。根据x64 bit / x32位系统,下载winutils.exe文件&amp;设置你的hadoop家指向它。

第一种方式:

1.下载文件

2.在您的系统中创建hadoop文件夹ex“C:”

3.在hadoop目录中创建bin文件夹ex:C:\ hadoop \ bin

4.paste winutils.exe in bin ex:C:\ hadoop \ bin \ winuitls.exe

5.在系统属性中的用户变量 - &gt;高级系统设置

创建新变量名称:HADOOP_HOME路径:C:\ hadoop \

第二种方式:

您可以使用以下命令直接在您的Java程序中设置hadoop home:

System.setProperty("hadoop.home.dir","C:\hadoop" );