您的位置:首页 > 运维架构

hadoop MapReduce程序中解决第三方jar包问题

2016-09-08 20:31 351 查看
在项目中碰到了MapReduce任务中需要引入第三方jar包的问题;

一、现象

报一堆类似异常【Error: java.lang.ClassNotFoundException:***】。

二、解决方案

方案1:把所有的第三方jar和自己的class打成一个大的jar包,这种方案显然笨拙,而且更新升级比较繁琐。

方案2:

在你的project里面建立一个lib文件夹,然后把所有的第三方jar包放到里面去,hadoop会自动加载lib依赖里面的jar。 (针对第三方的jama.Matrix)
http://www.blowide.com/2010/04/including-external-jars-in-a-hadoop-job/
注意最后一段:

Luckily, I bumped into a solution suggested Doug
Cutting as an answer
to someone who had a similar predicament. The
solution was to create a “lib” folder in your project and copy all the external jars into this folder
. According to Doug, Hadoop will look
for third-party jars in this folder. It works great!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐