安装sqoop-1.99.7报caused by java.lang.ClassNotFoundException: org.apache.hadoop.conf.Configuration

   
最近在学习sqoop,我以前用过sqoop-1.4.4版本,最近想学习最新版sqoop-1.99.7,在网上找了安装教程,安装完后用
#sqoop2-tool  verify命令进行验证,结果报caused by java.lang.ClassNotFoundException:org.apache.hadoop.conf.Configuration

这个错误,明显是sqoop没有找到hadoop的路径,有网友说把hadoop的jar包拷贝到sqoop目录下,这种方法是最笨的方法,不建议。


既然是路径的问题,我们就去修改路径,打开sqoop脚本文件,#vim  sqoop.sh   
进入编辑模式以后,找到一下几行:

  HADOOP_COMMON_HOME=${HADOOP_COMMON_HOME:-${HADOOP_HOME}/share/hadoop/common}
  HADOOP_HDFS_HOME=${HADOOP_HDFS_HOME:-${HADOOP_HOME}/share/hadoop/hdfs}
  HADOOP_MAPRED_HOME=${HADOOP_MAPRED_HOME:-${HADOOP_HOME}/share/hadoop/mapreduce}
  HADOOP_YARN_HOME=${HADOOP_YARN_HOME:-${HADOOP_HOME}/share/hadoop/yarn}


如果没猜错的话,你当时在安装hadoop时,在系统环境变量/etc/profile文件中除了定义了HADOOP_HOME,还定义其他,例如HADOOP_COMMON_HOME等等,这样的话,就会导致很多莫名的错误,也许sqoop找不到hadoop的路径就是这个原因


所以解决办法就是,把上面sqoop.sh中的那四行代码改成

  HADOOP_COMMON_HOME=${HADOOP_HOME}/share/hadoop/common
  HADOOP_HDFS_HOME=${HADOOP_HOME}/share/hadoop/hdfs
  HADOOP_MAPRED_HOME=${HADOOP_HOME}/share/hadoop/mapreduce
  HADOOP_YARN_HOME=${HADOOP_HOME}/share/hadoop/yarn

为了保险起见,可以把${HADOOP_HOME}也换成绝对路径(例如: HADOOP_COMMON_HOME=/home/lvyuan/hadoop-2.6.0/share/hadoop/common),然后再#sqoop2-tool   verify
就验证通过了


sqoop-1.99.7安装教程参见这篇博客http://blog.csdn.net/u012842205/article/details/52344196


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值