【问题标题】:How to run Hbase Java example?如何运行 Hbase Java 示例?
【发布时间】:2023-03-27 10:45:01
【问题描述】:

我在运行简单的 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 示例的方法是否正确?

【问题讨论】:

  • “不适合我”是什么意思?错误信息?什么都不做?
  • hbase shell 可以工作吗?如果没有,您必须检查您的安装并重新启动 hbase
  • 运行此命令时出现以下错误:$java -classpath hbase-0.94.2.jar: /scratch/hadoop-1.0.4/hadoop-core-1.0.4.jar HBaseTest Exception in线程“主”java.lang.NoClassDefFoundError:/scratch/hadoop-1/0/4/hadoop-core-1/0/4/jar 原因:java.lang.ClassNotFoundException:.scratch.hadoop-1.0.4。 hadoop-core-1.0.4.jar at java.net.URLClassLoader$1.run(URLClassLoader.java:202) ... at java.lang.ClassLoader.loadClass(ClassLoader.java:246) 找不到主类: /scratch/hadoop-1.0.4/hadoop-core-1.0.4.jar。程序将退出。

标签: hadoop hbase


【解决方案1】:

您可以使用“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(); } } }

【讨论】:

  • 是的。它正在工作 1. Hbase/bin$./hbase 类路径 2. 得到非常大的类路径字符串,其中包含运行程序所需的所有路径 3.$ java %hbase classpath of string(step 2) ....现在它正在工作:)
  • 这行得通。在常规 hbase 和 hbase-slider-app 上编译和运行的源代码和指令。 hbase classpath 返回一个非常大的字符串,几乎包含 ${hbase_home}/lib、hbase/conf、hadoop/conf 等中的所有内容。
【解决方案2】:

如果运行失败,您可以(如果可能)使用像 NetBeans 这样的 IDE 来开发 Java HBase 客户端 API 程序。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-17
    • 1970-01-01
    • 2014-11-25
    • 2016-04-26
    • 2021-03-06
    相关资源
    最近更新 更多