我是靠谱客的博主 香蕉啤酒,最近开发中收集的这篇文章主要介绍hive语句分区归档时报错:java.lang.NoClassDefFoundError: org/apache/hadoop/tools/HadoopArchives,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
一、报错信息:
在我执行分区归档时命令:alter table hive_text archive partition (folder='docs');
报错如下:
查看日志:cat /tem/hive/root/hive.log(这是我的日志路径),报错日志如下
默认日志路径:/tmp/<user.name>文件夹的hive.log文件中,全路径就是/tmp/当前用户名(root)/hive.log。
2019-08-30 04:15:34,496 ERROR [main]: exec.DDLTask (DDLTask.java:failed(520)) - java.lang.NoClassDefFoundError: org/apache/hadoop/tools/HadoopArchives
at org.apache.hadoop.hive.ql.exec.DDLTask.archive(DDLTask.java:1350)
at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:360)
at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:160)
at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:88)
at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1676)
at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1435)
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1218)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1082)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1072)
at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:213)
at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:165)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:376)
at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:736)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:681)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:621)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.tools.HadoopArchives
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)
... 21 more
2019-08-30 04:15:34,497 ERROR [main]: ql.Driver (SessionState.java:printError(960)) - FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. org/apache/hadoop/tools/HadoopArchives
二、解决方法
将/usr/local/hadoop-2.7.1/share/hadoop/tools/lib(你自己hadoop的目录,此目录我的hadoop安装目录)下的
hadoop-archives-2.7.6.jar包放入 /usr/local/hive122/lib(根据自己的安装目录)目录下
扩展:其实诸如此类问题,大部分都是应为少了jar包,去相应的目录找到所需要的jar包放到对应的目录下即可解决问题。
再次执行成功!!!!
最后
以上就是香蕉啤酒为你收集整理的hive语句分区归档时报错:java.lang.NoClassDefFoundError: org/apache/hadoop/tools/HadoopArchives的全部内容,希望文章能够帮你解决hive语句分区归档时报错:java.lang.NoClassDefFoundError: org/apache/hadoop/tools/HadoopArchives所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复