`

hbase-0.94脚本hbase在cygwin的环境的bug

 
阅读更多

主要的问题,其实是Windows和Linux的classpath的分隔符不同。

 

问题原由:

搞了一天,简单的本地默认的hbase的环境搭不起,郁闷!

最后,原来是hbase脚本的bug!!

 

Winseliu@WINSE ~/hbase-0.94.2
$ bin/hbase classpath
C:\cygwin\home\Winseliu\hbase-0.94.2\conf;C:\Java\jdk1.7.0_02\lib\tools.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\;C:\cygwin\home\Winseliu\hbase-0.94.2\hbase-0.94.2.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\hbase-0.94.2-tests.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\activation-1.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\asm-3.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\avro-1.5.3.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\avro-ipc-1.5.3.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-beanutils-1.7.0.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-beanutils-core-1.8.0.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-cli-1.2.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-codec-1.4.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-collections-3.2.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-configuration-1.6.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-digester-1.8.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-el-1.0.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-httpclient-3.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-io-2.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-lang-2.5.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-logging-1.1.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-math-2.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\commons-net-1.4.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\core-3.1.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\guava-11.0.2.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\hadoop-core-1.0.3.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\high-scale-lib-1.1.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\httpclient-4.1.2.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\httpcore-4.1.3.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jackson-core-asl-1.8.8.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jackson-jaxrs-1.8.8.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jackson-mapper-asl-1.8.8.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jackson-xc-1.8.8.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jamon-runtime-2.3.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jasper-compiler-5.5.23.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jasper-runtime-5.5.23.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jaxb-api-2.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jaxb-impl-2.2.3-1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jersey-core-1.8.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jersey-json-1.8.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jersey-server-1.8.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jettison-1.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jetty-6.1.26.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jetty-util-6.1.26.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jruby-complete-1.6.5.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jsp-2.1-6.1.14.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jsp-api-2.1-6.1.14.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\jsr305-1.3.9.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\junit-4.10-HBASE-1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\libthrift-0.8.0.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\log4j-1.2.16.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\metrics-core-2.1.2.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\netty-3.2.4.Final.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\protobuf-java-2.4.0a.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\servlet-api-2.5-6.1.14.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\slf4j-api-1.4.3.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\slf4j-log4j12-1.4.3.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\snappy-java-1.0.3.2.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\stax-api-1.0.1.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\velocity-1.7.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\xmlenc-0.52.jar;C:\cygwin\home\Winseliu\hbase-0.94.2\lib\zookeeper-3.4.3.jar:

 

环境变量最后应该是一个“;”而现在是“:”

 

问题解决

修改如下(其实就是把cygwin转换的代码位置移动了一下):

Winseliu@WINSE ~/hbase-0.94.2/bin
$ diff -urN hbase-old hbase
--- hbase-old   2012-10-08 04:04:16.000000000 +0800
+++ hbase       2012-11-25 19:08:06.408506700 +0800
@@ -199,13 +199,6 @@
   HBASE_LOGFILE='hbase.log'
 fi
 
-# 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"`
-fi
-
 function append_path() {
   if [ -z "$1" ]; then
     echo $2
@@ -227,6 +220,13 @@
   CLASSPATH=$(append_path "${CLASSPATH}" `${HADOOP_IN_PATH} classpath 2>/dev/null`)
 fi
 
+# 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"`
+fi
+
 if [ -d "${HBASE_HOME}/build/native" -o -d "${HBASE_HOME}/lib/native" ]; then
   if [ -z $JAVA_PLATFORM ]; then
     JAVA_PLATFORM=`CLASSPATH=${CLASSPATH} ${JAVA} org.apache.hadoop.util.PlatformName | sed -e "s/ /_/g"`

 

 

分享到:
评论

相关推荐

    hbase-0.94.18

    在这个绝版的"Hbase-0.94.18"版本中,我们可以深入了解早期HBase的设计思想和功能特性。 1. **分布式存储**: HBase是一种分布式、多版本、列导向的NoSQL数据库。它将数据存储在表中,由行键、列族、列和时间戳组成...

    Hadoop-2.4.0+Hbase-0.94.18+Nutch-2.3集群爬虫配置攻略

    在配置Hbase-0.94.18时,首先需要确保Hadoop已经正确配置并运行。Hbase的配置文件主要在`conf/hbase-site.xml`中。关键配置包括: 1. 设置HBase的主HMaster地址:`<property><name>hbase.master</name><value>...

    pinpoint的hbase初始化脚本hbase-create.hbase

    搭建pinpoint需要的hbase初始化脚本hbase-create.hbase

    hbase-meta-repair-hbase-2.0.2.jar

    HBase 元数据修复工具包。 ①修改 jar 包中的application.properties,重点是 zookeeper.address、zookeeper.nodeParent、hdfs....③开始修复 `java -jar -Drepair.tableName=表名 hbase-meta-repair-hbase-2.0.2.jar`

    hbase-sdk是基于hbase-client和hbase-thrift的原生API封装的一款轻量级的HBase ORM框架

    hbase-sdk是基于hbase-client和hbase-thrift的原生API封装的一款轻量级的HBase ORM框架。 针对HBase各版本API(1.x~2.x)间的差异,在其上剥离出了一层统一的抽象。并提供了以类SQL的方式来读写HBase表中的数据。对...

    phoenix-core-4.7.0-HBase-1.1-API文档-中文版.zip

    赠送jar包:phoenix-core-4.7.0-HBase-1.1.jar; 赠送原API文档:phoenix-core-4.7.0-HBase-1.1-javadoc.jar; 赠送源代码:phoenix-core-4.7.0-HBase-1.1-sources.jar; 赠送Maven依赖信息文件:phoenix-core-4.7.0...

    hbase-1.2.1-bin.tar.gz.zip

    总之,HBase-1.2.1的二进制压缩包提供了在Hadoop环境下部署和运行HBase所需的所有组件,适用于处理大量非结构化或半结构化数据的场景,如实时分析、日志处理、物联网应用等。正确解压并配置后,用户可以充分利用...

    HBase(hbase-2.4.9-bin.tar.gz)

    就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非...

    hbase-1.2.6.1-bin.tar.gz

    hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz

    phoenix-hbase-2.4-5.1.2

    《Phoenix与HBase的深度解析:基于phoenix-hbase-2.4-5.1.2版本》 在大数据处理领域,Apache HBase和Phoenix是两个至关重要的组件。HBase作为一个分布式、列式存储的NoSQL数据库,为海量数据提供了高效、实时的访问...

    phoenix-hbase-2.2-5.1.2-bin.tar.gz

    `phoenix-hbase-2.2-5.1.2-bin.tar.gz`这个压缩包包含了Phoenix 2.2版本与HBase 5.1.2版本的二进制文件,用户可以解压后在本地或集群环境中安装和运行。安装步骤通常包括配置环境变量、创建HBase和Phoenix的目录结构...

    hbase-1.1.2-bin.tar.gz

    标题中的“hbase-1.1.2-bin.tar.gz”指的是HBase 1.1.2版本的二进制发行包,通常以压缩格式提供,方便用户下载并在Linux或Unix环境中安装使用。 HBase的设计灵感来源于Google的Bigtable论文,它在Hadoop之上构建,...

    hbase-2.4.17-bin 安装包

    这个“hbase-2.4.17-bin”安装包提供了HBase的最新稳定版本2.4.17,适用于大数据处理和分析场景。下面将详细介绍HBase的核心概念、安装步骤以及配置和管理。 一、HBase核心概念 1. 表(Table):HBase中的表是由行...

    hbase的hbase-1.2.0-cdh5.14.2.tar.gz资源包

    HBase是Apache Hadoop生态系统中的一个分布式、高性能、版本化、列族式数据库,它提供了对大规模数据集的实时访问。...通过`hbase-1.2.0-cdh5.14.2.tar.gz`这个资源包,你可以开始在CDH 5.14.2环境中探索和使用HBase。

    phoenix-5.0.0-HBase-2.0-client

    "phoenix-5.0.0-HBase-2.0-client.jar" 文件就是Squirrel SQL Client为了连接和操作Phoenix在HBase上的数据所必需的库文件。 Phoenix是一个高性能的关系型SQL层,构建在HBase之上,旨在解决HBase上的复杂查询和大...

    hbase-client-2.1.0-cdh6.3.0.jar

    hbase-client-2.1.0-cdh6.3.0.jar

    hbase-2.4.11-bin.tar.gz

    2. **解压安装**:下载的“hbase-2.4.11”压缩包需解压到指定目录,然后配置环境变量,包括HBASE_HOME、PATH等。 3. **配置文件**:修改conf/hbase-site.xml配置文件,设置HBase的主节点(master)地址、Zookeeper...

    phoenix-client-hbase-2.2-5.1.2.jar

    phoenix-client-hbase-2.2-5.1.2.jar

    hbase-1.3.1-bin.tar.gz.7z

    进入 `conf` 目录,复制 `hbase-site.xml.example` 文件为 `hbase-site.xml`,并编辑该文件,添加如下配置: ```xml <name>hbase.rootdir <value>hdfs://namenode_host:port/hbase <name>hbase.cluster....

Global site tag (gtag.js) - Google Analytics