我是靠谱客的博主 仁爱路人,这篇文章主要介绍写文件到HDFS异常java.lang.NoClassDefFoundError: org/htrace/Trace,现在分享给大家,希望可以做个参考。

本地测试写文件到HDFS正常,将jar部署到服务器上进行操作时出现异常。
整个过程出现以下一些异常情况
1.no scheme:hdfs
2.java.lang.NoClassDefFoundError: org/apache/commons/cli/parseException
3.java.lang.NoClassDefFoundError: org/htrace/Trace
主要原因是缺少相关依赖以及依赖的版本不匹配

解决方法:
1.缺少hadoop-hdfs-2.6.5.jar
2.缺少commons-cli-1.3.1.jar
3.首先需要检查lib包中是否包含如下文件.
commons-configuration-1.6.jar、
hadoop-auth-2.6.5.jar、
hadoop-common-2.6.5.jar、
hadoop-hdfs-2.6.5.jar、
commons-io-2.4.jar、
commons-cli-1.3.1.jar、
htrace-core-3.1.0-incubating.jar
如果存在还报错可能为版本问题htrace-core-3.1.0-incubating.jar
CDH中的classpath中引入的是/opt/cloudera/parcels/CDH/jars/htrace-core-3.0.4.jar,而这个版本的时候,htrace还是org.htrace,而3.1.0的时候已经贡献给Apache了,改叫org.apache.htrace了。
所以需要下载htrace-core-3.0.4.jar

同时要去掉相同依赖的其他版本,以免造成其他问题。

最后

以上就是仁爱路人最近收集整理的关于写文件到HDFS异常java.lang.NoClassDefFoundError: org/htrace/Trace的全部内容,更多相关写文件到HDFS异常java.lang.NoClassDefFoundError:内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(72)

评论列表共有 0 条评论

立即
投稿
返回
顶部