zoukankan      html  css  js  c++  java
  • problems_hbase

    1.集群上执行hbase和mr整合的代码报错:

    [root@cdh01 develop]# yarn jar original-hbase-1.0-SNAPSHOT.jar cn.study.hbasemr.HBaseMain 报错,
    报错如下:
    Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/HBaseConfiguration

    原因:original-hbase-1.0-SNAPSHOT.jar只有6KB左右,是没有整合任何依赖jar包的一个jar包。

    解决方法:

    1. 可以使用打包好的另一个jar包: hbase-1.0-SNAPSHOT.jar,它有51M左右,其中整合了所有需要的依赖jar包。

    2. 设置我们的环境变量,然后运行original那个比较小的jar包:

    #如果hadoop安装的是cdh版本的,则要这么写:export HADOOP_HOME=/usr/bin
    export HADOOP_HOME=/develop/hadoop-2.7.5  
    export HBASE_HOME=/usr/develop/hbase-2.0.0  
    export HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase mapredcp` 
    yarn jar original-hbase-1.0-SNAPSHOT.jar cn.study.hbasemr.HBaseMain
    

    2.本地执行hbase和mr整合的代码报错:

    Exception in thread "main" java.io.IOException: Mkdirs failed to create /user/witt/hbase-staging (exists=false, cwd=file:/usr/develop/ideaWs/hbase)
    错误提示里发现:cwd=file:/usr/develop/ideaWs/hbase
    cwd: current work directory。居然是本地文件系统,怀疑dfs的配置没有加载,于是打印conf的配置信息发现:
    fs.defaultFS=file:///

    解决方案: 复制 $HADOOP_HOME/etc/hadoop 目录(我的是cdh版本的hadoop,配置文件路径是 /etc/hadoop/conf/)下配置文件 core-site.xml, hdfs-site.xml 到$PROJECT_DIR/src/main/resources目录下,问题解决。

  • 相关阅读:
    2017第5周五随想录~改变活法
    2017第5周四
    《高绩效教练》笔记
    2017第5周二杭州印象
    2017第5周一
    代码自动生成工具_java版
    20个代码生成框架
    通过数据库表自动生成POJO(JavaBean)对象
    java工具类–自动将数据库表生成javabean
    Nginx+Tomcat+Memcached负载均衡集群服务搭建
  • 原文地址:https://www.cnblogs.com/mediocreWorld/p/15186043.html
Copyright © 2011-2022 走看看