java.io.IOException:在Hadoop二进制文件中找不到可执行文件nullbinwinutils


$ 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 nullbinwinutils.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)

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

第一种方式:

1.下载文件

2.在System ex"C:"中创建hadoop文件夹

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

4.在bin中粘贴winutils.exe,例如:C:\hadoop\bin\winuitls.exe

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

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

第二种方式:

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

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

最新更新