在windows环境下,在eclipse中通过phoenix操作hbase,启用了log4j以后,程序运行报如下错:
DEBUG [org.apache.hadoop.util.Shell] - Failed to detect a valid hadoop home directory
java.io.IOException : HADOOP_HOME or hadoop.home.dir are not set.
Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executablenull\bin\winutils.exe in the Hadoop binaries.
解决方式
1.下载winutils的windows版本
GitHub上,有人提供了winutils的windows的版本,项目地址是:https://github.com/srccodes/hadoop-common-2.2.0-bin,直接下载此项目的zip包,下载后是文件名是hadoop-common-2.2.0-bin-master.zip,随便解压到一个目录2.配置环境变量
在windows下,增加用户变量HADOOP_HOME,值是下载的zip包解压的目录,然后在系统变量path里增加%HADOOP_HOME%\bin 即可。
再次运行程序,正常执行。若还是同样的错,重新启动eclipse即可。
参考:http://blog.youkuaiyun.com/vickyrocker1/article/details/47341183