我从命令行构建并运行nutch 1.7就好了
hadoop jar apache-ntuch-1.7.job org.apache.nutch.crawl.Crawl hdfs:// myserver / nutch / urls -dir hdfs:// myserver / nutch / crawl -depth 5 -topN100
但是当我从oozie那里跑出同样的东西时,它一直在变 错误的FS:hdfs:// myserver / nutch / crawl / crawldb / current,expected:file:///
每次代码执行时我都会检查源代码
FileSystem fs = new JobClient(job).getFs();
fs变回本地fs。
我覆盖了这些语句的所有实例,然后作业在fetch阶段死掉,简单地说 java.io.IOException:作业失败了! 在org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:838)
看起来从oozie运行会导致加载错误版本的JobClient类(来自hadoop-core.jar)。
之前有人见过这个吗?
答案 0 :(得分:0)
似乎oozie conf目录缺少正确的* -site.xml文件。我将mapred-site.xml添加到/ etc / oozie / conf / hadoop-conf目录中,这个问题就消失了。