2014-01-28 74 views
4

我編譯了hadoop 2.2.0 x64並在羣集上運行它。當我做hadoop job -listhadoop job -list all,它拋出一個NPE是這樣的:hadoop 2.2.0 job -list引發NPE

14/01/28 17:18:39 INFO Configuration.deprecation: session.id is deprecated. Instead, use dfs.metrics.session-id 
14/01/28 17:18:39 INFO jvm.JvmMetrics: Initializing JVM Metrics with processName=JobTracker, sessionId= 
Exception in thread "main" java.lang.NullPointerException 
    at org.apache.hadoop.mapreduce.tools.CLI.listJobs(CLI.java:504) 
    at org.apache.hadoop.mapreduce.tools.CLI.run(CLI.java:312) 
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) 
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84) 
    at org.apache.hadoop.mapred.JobClient.main(JobClient.java:1237) 

,並在Hadoop的webapp像jobhistory(我打開jobhistory服務器上)。它顯示沒有工作正在運行,儘管我正在運行工作,但沒有工作完成。

請幫我解決這個問題。

回答

0

我在試圖將mapreduce遷移到YARN時遇到此問題。原來我錯過了mapred-site.xml中的指令,指示圖減少使用YARN:

<property> 
    <name>mapreduce.framework.name</name> 
    <value>yarn</value> 
</property>