9

我在运行简单的 Hbase 示例时遇到问题。

我在 HbaseTest.java 上创建了一个表并插入了一些记录。在 Unix 中,我可以编译 java 类。经过。

$javac -classpath hbase-0.94.2.jar:hadoop-core-1.0.4.jar HBaseTest.java

但我无法通过以下方式运行该程序:$java -classpath hbase-0.94.2.jar:hadoop-core-1.0.4.jar HBaseTest

上面的命令对我不起作用。不确定是什么问题?运行 Hbase Java 示例是正确的方法吗?

4

2 回答 2

17

您可以使用“hbase classpath”来获取所需的类路径。

    /*
     * 编译并运行:
     * javac -cp`hbase 类路径`TestHBase.java
     * java -cp `hbase 类路径` TestHBase
     */
    导入 org.apache.hadoop.conf.Configuration;
    导入 org.apache.hadoop.hbase.*;
    导入 org.apache.hadoop.hbase.client.*;
    导入 org.apache.hadoop.hbase.util.*;

    公共类 TestHBase {
        公共静态 void main(String[] args) 抛出异常 {
            配置 conf = HBaseConfiguration.create();
            HBaseAdmin 管理员 = 新 HBaseAdmin(conf);
            尝试 {
                HTable 表 = 新 HTable(conf, "test-table");
                Put put = new Put(Bytes.toBytes("test-key"));
                put.add(Bytes.toBytes("cf"), Bytes.toBytes("q"), Bytes.toBytes("value"));
                table.put(put);
            } 最后 {
                admin.close();
            }
        }
    }
于 2012-12-05T17:50:44.143 回答
1

如果它无法运行,如果可能的话,您可以使用像 NetBeans 这样的 IDE 来开发 Java HBase 客户端 API 程序。

  • 打开 NetBeans 后,转到 Tools=>Libraries 并单击“New Library”并为其命名,例如“MapReduce”。
  • 给它一个名字,然后单击 Add JAR/Folder 并选择所需的 JAR 文件,通常在/usr/local/hadoop-2.x.x/share/hadoophadoop 库和/usr/local/hbase-1.x.x/libHBase 库下,通过导航文件系统浏览器(或只是导航到您的安装目录)。Shift+箭头键用于批量选择 jar 文件。
  • 现在像往常一样创建一个新的 Java 项目,然后在“项目”窗格上右键单击它并转到“属性”。
  • 现在单击 Libraries=>Add Library 并从显示的列表中选择您的库。鉴于所有进程都在运行,您现在应该可以编译并运行它们了。
于 2016-09-22T12:35:55.717 回答