最近由于要使用Sqoop来到出数据到hdfs,可是发现Sqoop1.4.5跟hadoop2.X不兼容,需要对Sqoop1.4.5进行编译,编译的具体方法见:http://my.codeweblog.com/AlbertHa/blog/318551

如果一切都顺利的话需要就不会遇到什么问题,但是有一个问题一直困扰了一周!

这是问题是什么呢? 就是每次执行$SQOOP_HOME/bin/sqoop脚本的时候总是抱一个错误:

Error: Could not find or load main class org.apache.sqoop.Sqoop

这是因为找不到sqoop-1.4.5.jar文件导致的。

从网上搜了很多解决办法,具体的做法是:将sqoop-1.4.5.jar文件拷贝到$HADOOP_HOME/lib目录下一份,可是我照做的,但问题还是依旧,一周了,我实在是到了要放弃的地步了,开始怀疑自己的能力了都!

今天我在绝望之时,打开sqoop脚本看了一下,发现脚本的最后有这样一句:

exec ${HADOOP_COMMON_HOME}/bin/hadoop org.apache.sqoop.Sqoop "$@"

这个应该就是执行hadoop jar命令的地方,看到这里或许你应该明白这个错误该怎么解决了吧?

解决办法

修改$SQOOP_HOME/bin/sqoop脚本:

* 修改前:

exec ${HADOOP_COMMON_HOME}/bin/hadoop org.apache.sqoop.Sqoop "$@"

* 修改后:

exec ${HADOOP_COMMON_HOME}/bin/hadoop jar $SQOOP_HOME/sqoop-1.4.5.jar org.apache.sqoop.Sqoop "$@"

即:显示指定sqoop-1.4.5.jar文件的所在位置。

然后执行sqoop help命令,就不会再报Could not find or load main class org.apache.sqoop.Sqoop 的错误了。

版本说明

Hadoop版本:Hadoop2.4.0

Sqoop版本:sqoop-1.4.5.bin__hadoop-2.0.4

不过视频上说直接可用,是不是因为我没在hxsyl下source /etc/profile,因为echo $SQOOP_HOME,还是以前的缓存,source就好了

Sqoop找不到主类 Error: Could not find or load main class org.apache.sqoop.Sqoop的更多相关文章

  1. flume-ng version出现错误Error: Could not find or load main class org.apache.flume.tools.GetJavaPrope的解决办法

    错误: 找不到或无法加载主类 org.apache.flume.tools.GetJavaProperty或者Error: Could not find or load main class org. ...

  2. Error: Could not find or load main class org.apache.flume.tools.GetJavaProperty

    问题: [root@master conf]# flume-ng version Error: Could not find or load main class org.apache.flume.t ...

  3. Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster

    自己搭建了一套伪分布的大数据环境,运行Hadoop包中自带的示例时,出现如下错误: 错误: 找不到或无法加载主类 org.apache.hadoop.mapreduce.v2.app.MRAppMas ...

  4. 找不到或无法加载主类(Could not find or load main class)

    一般可能会是包名引起的,还有可能就不小心加上了.class后缀 解决方案如下 可以加上目录或者使用符号 . ,注意要用空格隔开 java -cp d:\sample HelloWorldjava -c ...

  5. 找不到或无法加载主类(Could not find or load main class )

    在Linux环境下,写了一个简单的java程序,通过javac编译成class文件,然后用java 运行的时候,报了这个错误, 搜了一下,可能是classpath的问题,所以用echo $CLASSP ...

  6. Java 找不到主类错误

    Eclipse 运行java 程序,突然出现错误:没有或找不到主类. 在网上找了好多办法,都不行. jdk环境配置啊-->这个一般不会出错,因为以前都不会出现这种问题. 查看项目配置啥的--&g ...

  7. 在有main函数的前提下 eclipse找不到主类

    有时候在测试类的时候eclipse会莫名奇妙的提示找不到主类   接下来分别有几种解决办法 1.在项目上右击> Builder Path -> Configure Build Path - ...

  8. eclipse导入新项目后,运行时找不到主类解决办法

    最近在学习多线程,今天下了一套源码,导入到eclipse里后,随便找了个带main()的类试了一下,找不到主类. 首先想到的解决办法是把工程clean一下,并没有用.去网上找了一个遍终于找到了管用的方 ...

  9. springboot找不到主类

    在学习springboot的时候,前几天写了一个demo,正常运行,一点问题也没有.今天运行不起来了. 报错:找不到主类 解决方案: Project->Clean->选中项目,点击Clea ...

随机推荐

  1. nginx 域名泛解析

    部分应用场景下要求服务器根据客户输入的二级域名地址自动访问不同的页面,比如一个服务器放置了不同的业务,商城.官网等多个业务,又不想一个个配置server, 网站目录结构入戏: html 网站根目录 m ...

  2. 【转】git shell 命令大全

    http://www.cnblogs.com/bugs/p/3384339.html 常用命令 git branch 查看本地所有分支 git status 查看当前状态 git commit 提交 ...

  3. ui-router实现返回上一页功能

    angular.module('ConsoleUIApp', ['ui.router','ui.bootstrap']) .config(function ($stateProvider, $urlR ...

  4. 空间数据可视化:1. 3D_Bar图表| 空间柱状图

    1.Sublime的使用 中文版的配置 https://jingyan.baidu.com/article/ca2d939d1e83feeb6c31cefc.html (百度经验) sublime里边 ...

  5. 20165235 学习基础和C语言基础调查

    20165235 学习基础和C语言基础调查 首先第一个问题:你有什么技能比大多人(超过90%以上)更好?感觉很难回答这种问题,其实我对很多东西挺感兴趣的,如果非要拿出一种比较突出的技能的话我感觉就是象 ...

  6. python基础篇_002_基础数据类型

    Python基础数据类型 1.int # int 用于计算 num = 3 # int 与其他数据类型转换 int_to_str = str(num) # 数字加引号 print(int_to_str ...

  7. php 图形用户界面GUI 开发

    php 图形用户界面GUI 开发 一.下载指定系统扩展 1 2 http://pecl.php.net/package/ui http://pecl.php.net/package/ui/2.0.0/ ...

  8. Web Component

    前言 Web Component不是新东西,几年前的技术,但是受限于浏览器兼容性,一直没有大规模应用在项目里,直到现在(2018年年末),除IE仍不支持之外,其它主流浏览器都支持Web Compone ...

  9. 洛谷P1309 瑞士轮(归并排序)

    To 洛谷.1309 瑞士轮 题目背景 在双人对决的竞技性比赛,如乒乓球.羽毛球.国际象棋中,最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高.后者的特点是较为公平, ...

  10. 2017-9-8-RaspberryPi安装过程

    设备: RaspberryPi 3B 安装版本: 2017-01-11-raspbian-jessie.img 第一步:准备好8G以上tf卡.Win32DiskImager.SD Formatter. ...