签到成功

知道了

CNDBA社区CNDBA社区

Sqoop ClassNotFoundException: org.json.JSONObject 解决方法

2019-03-03 02:51 3938 0 原创 Sqoop
作者: dave

Sqoop 创建job时报如下错误:java.lang.NoClassDefFoundError: org/json/JSONObject, 这里是缺少JSON的jar包:http://www.cndba.cn/dave/article/3308

http://www.cndba.cn/dave/article/3308
http://www.cndba.cn/dave/article/3308
http://www.cndba.cn/dave/article/3308

[dave@www.cndba.cn data]$ sqoop job --create dave -- import --connect jdbc:mysql://192.168.56.2:3306/employees --username root --table employees --m 1 -P
Warning: /home/hadoop/sqoop/../hbase does not exist! HBase imports will fail.
Please set $HBASE_HOME to the root of your HBase installation.
Warning: /home/hadoop/sqoop/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /home/hadoop/sqoop/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
2019-03-03 02:39:13,147 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
Enter password: 
Exception in thread "main" java.lang. [dave@www.cndba.cn lib]$ pwd
/home/hadoop/sqoop/lib
[dave@www.cndba.cn lib]$ ll json-20180813.jar 
-rw-r--r--. 1 hadoop hadoop 64597 Mar  3 02:47 json-20180813.jar
[dave@www.cndba.cn lib]$
    at org.apache.sqoop.util.SqoopJsonUtil.getJsonStringforMap(SqoopJsonUtil.java:43)
    at org.apache.sqoop.SqoopOptions.writeProperties(SqoopOptions.java:785)
    at org.apache.sqoop.metastore.hsqldb.HsqldbJobStorage.createInternal(HsqldbJobStorage.java:399)
    at org.apache.sqoop.metastore.hsqldb.HsqldbJobStorage.create(HsqldbJobStorage.java:379)
    at org.apache.sqoop.tool.JobTool.createJob(JobTool.java:181)
    at org.apache.sqoop.tool.JobTool.run(JobTool.java:294)
    at org.apache.sqoop.Sqoop.run(Sqoop.java:147)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
    at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)
    at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)
    at org.apache.sqoop.Sqoop.runTool(Sqoop.java:243)
    at org.apache.sqoop.Sqoop.main(Sqoop.java:252)
Caused by: java.lang.ClassNotFoundException: org.json.JSONObject
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 12 more
[dave@www.cndba.cn data]$

在maven仓库上下载后上传到sqoop的lib目录下即可:http://www.cndba.cn/dave/article/3308

http://www.cndba.cn/dave/article/3308
http://www.cndba.cn/dave/article/3308
http://www.cndba.cn/dave/article/3308

https://mvnrepository.comhttp://www.cndba.cn/dave/article/3308http://www.cndba.cn/dave/article/3308

[dave@www.cndba.cn lib]$ pwd
/home/hadoop/sqoop/lib
[dave@www.cndba.cn lib]$ ll json-20180813.jar 
-rw-r--r--. 1 hadoop hadoop 64597 Mar  3 02:47 json-20180813.jar
[dave@www.cndba.cn lib]$


[dave@www.cndba.cn data]$ sqoop job --create dave -- import --connect jdbc:mysql://192.168.56.2:3306/employees --username root --table employees --m 1 -P
Warning: /home/hadoop/sqoop/../hbase does not exist! HBase imports will fail.
Please set $HBASE_HOME to the root of your HBase installation.
Warning: /home/hadoop/sqoop/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /home/hadoop/sqoop/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
2019-03-03 02:48:15,121 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
Enter password: 
[dave@www.cndba.cn data]$

版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
dave

dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 2261
    原创
  • 3
    翻译
  • 578
    转载
  • 191
    评论
  • 访问:7995597次
  • 积分:4346
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ