Получить oozie job.properties в java-код как часть действия java в oozie 4.x - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь получить 3 свойства из job.properties и использовать их в коде Java.В приведенном выше коде Java получает их, вызывая файл oozie.action.conf.xml.

public class UploadHDFS {
public static void main(String[] args) throws Exception {
      new UploadHDFS().execute();
}

   public void execute() {
      String configurationLocation = System.getProperty("oozie.action.conf.xml");
      Path localConfigurationPath = new Path(configurationLocation);
      Configuration configuration = new Configuration();
      configuration.addResource(localConfigurationPath);
      // .. continue here 
  }
}

Есть ли способ вызвать только 3 значения из файла job.properties; nameNode , jobTracker и queueName вместо файла отверстия?

Может быть что-то вроде:

String value1 = System.getProperty("<name-node>");
String value1 = System.getProperty("<job-tracker>");
String value1 = System.getProperty("<queue-name>");

Или я должен передать эти элементы в качестве аргументов непосредственно из действия в рабочем процессе oozie:

<main-class>org.apache.oozie.example.Main</main-class>
<arg>${nameNode}</arg>
<arg>${jobTracker}</arg>
<arg>${queueName}</arg>
...