[英]Oozie shell action failed to exec java in Linux
我們已經提交了以下Oozie工作流程工作。 它在Windows群集中執行,但在Linux中失敗。
<workflow-app xmlns='uri:oozie:workflow:0.3' name='shell-wf'>
<start to='shell1' />
<action name='shell1'>
<shell xmlns="uri:oozie:shell-action:0.1">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>${queueName}</value>
</property>
</configuration>
<exec>Java</exec>
<argument>A</argument>
<argument>B</argument>
<file>${EXEC}#${EXEC}</file> <!--Copy the executable to compute node's current working directory -->
</shell>
<ok to="end" />
<error to="fail" />
</action>
<kill name="fail">
<message>Script failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name='end' />
</workflow-app>
但是當我執行上述工作流文件時,拋出的異常無法運行Java程序。 沒有這樣的文件或目錄 。
如果外殼程序腳本有一個外殼程序操作,並且該外殼程序腳本中的任何命令均失敗,則必須在外殼程序腳本中添加#!/bin/bash -e
以捕獲轉換的失敗代碼。 然后它將被捕獲到輸出中,並且只會殺死您的工作流程。 否則,即使shell操作可能已失敗,它也將成功退出。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.