0
我想将第三方jar添加到hadoop工作。我正在使用DistributedCache.addFileToClassPath
方法添加每个罐子。我可以看到mapred.job.classpath.files
已在作业xml文件中正确填充。 (因为我们没有使用toolrunner最有可能的)问题添加第三方jar到hadoop工作
任何建议,这可能是错误的
-libjars不为我工作,要么?
我想将第三方jar添加到hadoop工作。我正在使用DistributedCache.addFileToClassPath
方法添加每个罐子。我可以看到mapred.job.classpath.files
已在作业xml文件中正确填充。 (因为我们没有使用toolrunner最有可能的)问题添加第三方jar到hadoop工作
任何建议,这可能是错误的
-libjars不为我工作,要么?
添加的Jar在HADOOP_CLASSPATH
vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh
添加最后一行
export HADOOP_CLASSPATH=/root/hadoop/extrajars/java-json.jar:$HADOOP_CLASSPATH
“/root/hadoop/extrajars/java-json.jar” 是在Linux机器本身,而不是在HDFS路径
重新启动的Hadoop
命令
hadoop classpath
应显示罐子在classpath中
现在运行MR工作照常
hadoop jar <MR-program jar> <MR Program class> <input dir> <output dir>
它将使用文件按预期。
您是在HDFS中添加的罐子,还是在您的工作客户端本地添加的罐子? – 2012-07-12 10:41:58
你应该真的使用ToolRunner,你可以在 – 2012-07-12 15:09:27
罐子已经在hdfs – akshit 2012-07-13 18:56:40