2014-10-30 80 views
2

请注意,我是一个完全的oozie菜鸟。我知道可以使用arg标签在oozie工作流xml中指定命令行参数。我想知道如何指定一个可选的命令行参数,以便oozie在用户没有指定时不会抱怨缺少必需的参数?如何在oozie工作流xml中创建可选的命令行参数

非常感谢提前。如果我提供的信息不够详细,我可以提供一个具体的例子,当我登录我的工作机器明天。我们使用apache commons CLI选项来解析选项。

E.g.我想作以下参数可选:

-e $ {} endDateTime

回答

1

从理论上讲,你应该能够使用“配置-default.xml中”文件旁边的“workflow.xml”文件为工作流程中的参数提供默认值(请参阅https://oozie.apache.org/docs/3.2.0-incubating/WorkflowFunctionalSpec.html),但我无法使其工作。

+0

取代它,我发现了以下解决方法。在job.properties文件中写入'endDateTime =“”',然后在java代码中检查是否存在'“''并用默认的结束日期时间覆盖它。如果添加命令行参数,那么也会覆盖job.properties文件中的内容。 – 2014-11-11 08:25:15

0

在您的工作流程,无论你将使用${myparam},与${firstNotNull(wf:conf('myparam'), 'mydefaultvalue')}