Java コードを使用して Oozie アクションを起動しようとしています。コマンド ラインを使用する場合、「-config job.properties」でプロパティ ファイルを指定すると、選択するワークフローが認識されます。同じタスクを実行するには、Java コードで「job.properties」ファイルをどのように定義すればよいでしょうか?
conf.setProperty(OozieClient.APP_PATH,"hdfs://clusterdb05.com:8020/user/apps/merge-logs/workflow.xml");
conf.setProperty("jobTracker", "jobtracker.com:8021");
conf.setProperty("nameNode", "hdfs://namenode.com:8020");
conf.setProperty("queueName", "jobtracker.com:8021");
conf.setProperty("appsRoot", "hdfs://namenode.com:8020/user/apps");
try {
String jobId = wc.run(conf);
System.out.println("Workflow job submitted");
while (wc.getJobInfo(jobId).getStatus() == WorkflowJob.Status.RUNNING) {
System.out.println("Workflow job running ...");
Thread.sleep(10 * 1000);
}
System.out.println("Workflow job completed ...");
System.out.println(wc.getJobInfo(jobId));
} catch (OozieClientException oozieClientException) {
oozieClientException.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}