Python Oozie Shell Action失败

时间:2014-03-11 16:08:36

标签: hadoop oozie

我有一个Oozie工作流,其中包含一个shell操作,该操作调用失败的Python脚本,但出现以下错误。

Launcher ERROR, reason: Main class [org.apache.oozie.action.hadoop.ShellMain], exit code [1]

Python脚本(hello.py)很简单。

print("Hello, World!")

这是我的Oozie工作流程。

<workflow-app xmlns="uri:oozie:workflow:0.4" name="hello">
<start to="shell-check-hour"/>

<action name="shell-check-hour">
<shell xmlns="uri:oozie:shell-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>${queueName}</value>
</property>
</configuration>
<exec>hello.py</exec>
<file>hdfs://localhost:8020/user/test/hello.py</file>
<capture-output/>
</shell>
<ok to="end"/>
<error to="fail"/>
</action>
<kill name="fail">
<message>Workflow failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
</workflow-app>

有人看到我在做什么有什么问题吗?如果我用shell脚本替换Python脚本,则shell脚本执行正常(两个文件都在同一目录中)。这让我相信问题是无论出于什么原因,Oozie都没有认识到Python。

1 个答案:

答案 0 :(得分:1)

Hash-Bang添加到您的脚本

例如,我的脚本以

开头
#!/usr/bin/env python