amod0017 amod0017 - 3 months ago 29
Java Question

Running hadoop jar command from JAVA using Runtime.exec

I am trying to run an hadoop jar command from JAVA using Runtime.exec.
Below is the sample code:

Runtime.getRuntime().exec(new String[]{"bin/hadoop", "jar /home/hadoop/jar/test.jar /user/hduser/myinput/input /user/hduser/newoutput"});


However I am not getting the desired output. Below is my hadoop command which I want to execute from JAVA:

bin/hadoop jar /home/hadoop/jar/test.jar /user/hduser/myinput/input /user/hduser/newoutput


I am not getting any exception as well. Is the way Runtime.getRuntime().exec is used is wrong?

Answer

Replace your command with following command:

Runtime.getRuntime().exec("HADOOP_HOME/bin/hadoop jar /home/hadoop/jar/test.jar /user/hduser/myinput/input /user/hduser/newoutput");