java 命令行运行文件问题

新手上路,请多包涵

[root@chenlong hbase]# pwd
/usr/local/hbase
[root@chenlong hbase]# ./bin/start-hbase.sh
/usr/local/hbase/conf
Error: Could not find or load main class org.apache.hadoop.hbase.util.HBaseConfTool

Error: Could not find or load main class org.apache.hadoop.hbase.zookeeper.ZKServerTool
starting master, logging to /usr/local/hbase/logs/hbase-root-master-chenlong.out
Error: Could not find or load main class org.apache.hadoop.hbase.master.HMaster
starting regionserver, logging to /usr/local/hbase/logs/hbase-root-1-regionserver-chenlong.out
Error: Could not find or load main class org.apache.hadoop.hbase.regionserver.HRegionServer

安装hbase官方文档 http://hbase.apache.org/book.html#quickstart 搞的运行有问题。不知道怎么回事。

发现可能跟环境设置有问题。

[root@chenlong hbase]# pwd
/usr/local/hbase
[root@chenlong hbase]# ./bin/start-hbase.sh
/usr/local/hbase/conf
Error: Could not find or load main class org.apache.hadoop.hbase.util.HBaseConfTool

Error: Could not find or load main class org.apache.hadoop.hbase.zookeeper.ZKServerTool
starting master, logging to /usr/local/hbase/logs/hbase-root-master-chenlong.out
Error: Could not find or load main class org.apache.hadoop.hbase.master.HMaster
starting regionserver, logging to /usr/local/hbase/logs/hbase-root-1-regionserver-chenlong.out
Error: Could not find or load main class org.apache.hadoop.hbase.regionserver.HRegionServer
文件就存在
[root@chenlong hbase]# find / -name HBaseConfTool.java
/usr/local/hbase/hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseConfTool.java

然后发现。。。
[root@chenlong ~]# cd
[root@chenlong ~]# javac Test.java
[root@chenlong ~]# java Test
hello world
换了个目录
[root@chenlong ~]# cd /
[root@chenlong /]# javac /root/Test.java
[root@chenlong /]# java /root/Test
Error: Could not find or load main class .root.Test
换个目录执行绝对地址的文件就不行了吗?

[root@chenlong /]# java -version
java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)

/etc/profile 环境变量设置
export HBASE_HOME=/usr/local/hbase
export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HBASE_HOME:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

阅读 5.7k
1 个回答

这个应该是CLASSPATH问题,默认当前目录是作为类路径的.你需要将你的jar加入环境变量去执行

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题