启动Hbase:cygpath:无法转换空路径

时间:2013-07-26 17:22:36

标签: cygwin hbase

我希望有人可以帮我解决这个问题:

启动hbase,我收到此错误:

$ ./start-hbase.sh
cygpath: can't convert empty path
cygpath: can't convert empty path
soporte@localhost's password:
localhost: starting zookeeper, logging to /usr/local/hbase-0.90.4/bin/../logs/hbase-CNEOSYLAP-zookeeper-CNEOSYLAP.out
localhost: cygpath: can't convert empty path
starting master, logging to /usr/local/hbase-0.90.4/bin/../logs/hbase-CNEOSYLAP-master-CNEOSYLAP.out
cygpath: can't convert empty path
soporte@localhost's password:
localhost: starting regionserver, logging to /usr/local/hbase-0.90.4/bin/../logs/hbase-CNEOSYLAP-regionserver-CNEOSYLAP.out
localhost: cygpath: can't convert empty path

此错误仅发生在hbase-0.90.4和hbase-0.90.6上,但不会发生在hbase-0.94.9中。我使用的是Windows 7 x64和CygWin设置2.774。

注1:我按照Installing HBase on Windowshere的说明操作 注2:设置hbase-0.90.X很重要因为后来我会使用Nutch 2.2.1

由于

2 个答案:

答案 0 :(得分:1)

通过cygpath或路径将unix样式路径转换为windows样式路径可能存在一些问题,实际上是空的。请记住,cygpath是一个cygwin实用程序,它将unix样式文件路径转换为Windows样式文件路径,反之亦然。我个人完全不相信这一点。所以,请确保你没有面对那些问题。为了顺利运作,我想建议一些事情:

  • 根据您的环境修改 hbase-env.sh 文件中的 #export HBASE_CLASSPATH = 行: 导出HBASE_CLASSPATH = / cygdrive / c / programs / hbase-0.90.4 / lib /
  • hbse-site.xml中的属性 hbase.rootdir 与您的cygwin环境有关: 像 file:/// C:/ cygwin / root / tmp / hbase / data
  • 之类的东西

不知怎的,我觉得在Windows上使用Hadoop / HBase总是很痛苦。您可以通过自己设置Linux机箱(如果可能)或使用某些VM来避免这些问题。

HTH

P上。 S.:您的Hadoop运行正常(如果有的话)?

修改:

hbase-0.90.4 / bin 目录下的 hbase 文件中添加以下行,如果不存在:

# cygwin path translation
if $cygwin; then
  CLASSPATH=`cygpath -p -w "$CLASSPATH"`
  HBASE_HOME=`cygpath -d "$HBASE_HOME"`
  HBASE_LOG_DIR=`cygpath -d "$HBASE_LOG_DIR"`

我现在没有旧的版本,因此我可以进行交叉检查。

答案 1 :(得分:-1)

尝试

bin/start-hbase.cmd

而不是

bin/start-hbase.sh