更新时间:2024-06-21 GMT+08:00

未安装客户端时编译并运行程序

操作场景

HBase应用程序支持在未安装HBase客户端的Linux环境中运行。在程序代码完成开发后,您可以上传Jar包至Linux环境中运行应用。

前提条件

Linux环境已安装JDK,版本号需要和Eclipse导出Jar包使用的JDK版本一致。

操作步骤

  1. 导出Jar包。

    1. 右击样例工程,选择导出。
      图1 导出Jar包
    2. 选择JAR file,单击“Next”。
      图2 选择JAR file
    3. 勾选“src”目录,导出Jar包到指定位置。单击两次“Next”。
      图3 选择导出路径
    4. 单击“Finish”,完成导出Jar包。

  2. 准备依赖的Jar包和配置文件。

    1. 在Linux环境新建目录,例如“/opt/test”,并创建子目录“lib”“conf”。将样例工程中“lib”的Jar包,以及1导出的Jar包,上传到Linux的“lib”目录。将样例工程中“conf”的配置文件上传到Linux中“conf”目录。
    2. “/opt/test”根目录新建脚本“run.sh”,修改内容如下并保存:
      #!/bin/sh
      BASEDIR=`pwd`
      SECURE=""
      if [ $# -eq 1 ]; then
        SECURE="-Dzookeeper.clientCnxnSocket=org.apache.zookeeper.ClientCnxnSocketNetty -Dzookeeper.client.secure=true"
      fi
      cd ${BASEDIR}
      for file in ${BASEDIR}/lib/*.jar
      do
      i_cp=$i_cp:$file
      echo "$file"
      done
      for file in ${BASEDIR}/conf/*
      do
      i_cp=$i_cp:$file
      done
      java -cp .${i_cp} ${SECURE} com.huawei.cloudtable.hbase.examples.TestMain

  3. 切换到“/opt/test”,执行以下命令,运行Jar包。

    • 未开启加密通道的HBase集群

      sh run.sh

    • 开启加密通道的HBase集群

      sh run.sh secure

      如果使用其他方式运行应用访问开启了加密通道的HBase集群,需要自行添加JVM参数:"-Dzookeeper.clientCnxnSocket=org.apache.zookeeper.ClientCnxnSocketNetty -Dzookeeper.client.secure=true