如何 运行 Java 使用 hue 界面作为 oozie 工作流程的操作
How to run Java Action as oozie workflow with hue interface
我创建了一个接受 args[0] = Hadoop 的 java main 方法的测试可执行 jar。 java 程序接收此参数并将以下字符串写入文本文件;
"currentTimeStamp /t Welcome to Hadoop!! /n"10万次。
我使用 hue 界面为 java 操作创建了一个 oozie-workflow。请参阅下面的 workflow.xml。然而,oozie-workflow 执行成功,但操作不会创建或写入文本文件。文本文件路径为 /user/ruben123/test.txt。当我使用命令 java -jar TestRunner.jar "Hadoop" 运行 本地 unix 服务器中的 jar 文件时,它会正确执行并产生所需的输出。
我有一个单节点伪集群 运行ning HDP 2.2 作为 Hortonworks 提供的 VM。
<workflow-app name="TestRunner" xmlns="uri:oozie:workflow:0.4">
<start to="TestRunner"/>
<action name="TestRunner">
<java>
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<main-class>org.test.TestRunner</main-class>
<arg>"Hadoop"</arg>
<capture-output/>
</java>
<ok to="end"/>
<error to="kill"/>
</action>
<kill name="kill">
<message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
</workflow-app>
如果您使用 HUE 版本 3.8 或 3.9,"Workflows" 选项卡下有一个选项。您浏览此菜单 "Workflows->Editors->Workflows"。
然后您会在右上角看到一个选项 "Create"。单击该按钮后,将出现不同工作流类型的列表(它们都是可拖动的)。拖动 "Java" 工作流程和休息应该很容易。
我创建了一个接受 args[0] = Hadoop 的 java main 方法的测试可执行 jar。 java 程序接收此参数并将以下字符串写入文本文件;
"currentTimeStamp /t Welcome to Hadoop!! /n"10万次。
我使用 hue 界面为 java 操作创建了一个 oozie-workflow。请参阅下面的 workflow.xml。然而,oozie-workflow 执行成功,但操作不会创建或写入文本文件。文本文件路径为 /user/ruben123/test.txt。当我使用命令 java -jar TestRunner.jar "Hadoop" 运行 本地 unix 服务器中的 jar 文件时,它会正确执行并产生所需的输出。
我有一个单节点伪集群 运行ning HDP 2.2 作为 Hortonworks 提供的 VM。
<workflow-app name="TestRunner" xmlns="uri:oozie:workflow:0.4">
<start to="TestRunner"/>
<action name="TestRunner">
<java>
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<main-class>org.test.TestRunner</main-class>
<arg>"Hadoop"</arg>
<capture-output/>
</java>
<ok to="end"/>
<error to="kill"/>
</action>
<kill name="kill">
<message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
</workflow-app>
如果您使用 HUE 版本 3.8 或 3.9,"Workflows" 选项卡下有一个选项。您浏览此菜单 "Workflows->Editors->Workflows"。
然后您会在右上角看到一个选项 "Create"。单击该按钮后,将出现不同工作流类型的列表(它们都是可拖动的)。拖动 "Java" 工作流程和休息应该很容易。