【问题标题】:How to add third party jar to mapreduce job?如何将第三方 jar 添加到 mapreduce 作业?
【发布时间】:2018-04-30 09:29:26
【问题描述】:

寻找将第三方 jar 添加到 mapreduce 作业的解决方案。目前,我们正在将第三方 jar 捆绑到 map reduce 作业中。似乎有时 mapreduce 作业 jar 的大小会变高。有没有其他方法可以解决这个问题

【问题讨论】:

    标签: java hadoop mapreduce hadoop2


    【解决方案1】:

    我相信“-libjars jar1,jar2,...”是你需要的

    【讨论】:

    • @LearnHadoop 它是 hadoop 命令的一个选项。像这样:“hadoop jar mapreduce.jar -libjars
    【解决方案2】:

    一般来说,使用 uber jar 路径是一个很好的路径,如果您对不同 MapReduce 作业的同一 jar 的不同版本有依赖关系,将 jar 添加到通用 java 类路径会成为问题。

    【讨论】:

    • 一般来说,沿着 uber jar 路线走是一个很好的路线 - 这是什么意思.. 你能详细说明一下吗
    • 您将所有依赖项 jar 打包到您构建的 jar 中以运行您的应用程序。 (这是一个比我能给stackoverflow.com/questions/11947037/what-is-an-uber-jar 更好的解释)
    【解决方案3】:

    使用下面的句子。

    出口 HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/path/to/my/jar1:/path/to/my/jar2

    然后您可以像往常一样运行您的 hadoop 作业:hadoop jar [mainClass]。更多详情请查看this out

    【讨论】:

    • 谢谢..如果你可以添加 CLASSPATH 可能会出现版本问题..
    猜你喜欢
    • 2018-01-31
    • 2015-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-31
    • 1970-01-01
    • 2021-11-07
    相关资源
    最近更新 更多