如何运行HBase程序
如何从命令行运行下面的代码?如何运行HBase程序
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.*;
import org.apache.hadoop.hbase.client.*;
import org.apache.hadoop.hbase.util.*;
public class MyHBase {
public static void main(String[] args) throws Exception {
Configuration conf = HBaseConfiguration.create();
HBaseAdmin admin = new HBaseAdmin(conf);
try {
HTable table = new 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);
} finally {
admin.close();
}
}
}
如何设置我的hbase类路径?我在我的类路径中获得了一个巨大的字符串。
UPDATE
root# vi MyHBase.java
hbase-0.92.2 root# java -classpath `hbase classpath`:./ /var/root/MyHBase
-sh: hbase: command not found
Exception in thread "main" java.lang.NoClassDefFoundError: /var/root/MyHBase
Caused by: java.lang.ClassNotFoundException: .var.root.MyHBase
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
我能够做
hbase-0.92.2 root# bin/hbase shell
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.92.2, r1379292, Fri Aug 31 13:13:53 UTC 2012
hbase(main):001:0> exit
难道我做错了什么?
你也可以做这样的事情: -
# export HADOOP_CLASSPATH=`./hbase classpath`
,然后在坛子捆绑这个Java到这样的Hadoop集群中运行它: -
#hadoop jar <jarfile> <mainclass>
这很好 – myloginid 2016-08-31 11:07:12
使用此
java -classpath `hbase classpath`:./ MyHBase
这将让整个类路径字符串HBase的使用,并增加了当前目录,以及到classpath中。
干杯 抹布
我在做什么错误的更新。 – 2013-04-23 04:23:40
你不能像这样执行一个类。类文件存在的路径需要放在类路径中。从类文件所在的目录执行相同的命令。或者,您可以将/ var/root添加到类路径中。 – Rags 2013-04-23 13:45:00
我试过javac -cp'hbase classpath' MyHBase.java java -cp'hbase classpath' MyHBase bt not working。显示hbase:命令未找到 – 2013-04-25 04:12:36
HBase有很多依赖关系,这将是一个很长的字符串。 – 2013-04-22 11:54:13
'java -classpath' doe不工作? – ericson 2013-04-22 12:52:45