使用Runtime.exec从JAVA运行hadoop jar命令
我正在尝试使用Runtime.exec从JAVA运行hadoop jar命令。 下面是示例代码:使用Runtime.exec从JAVA运行hadoop jar命令,java,hadoop,runtime,runtime.exec,Java,Hadoop,Runtime,Runtime.exec,我正在尝试使用Runtime.exec从JAVA运行hadoop jar命令。 下面是示例代码: Runtime.getRuntime().exec(new String[]{"bin/hadoop", "jar /home/hadoop/jar/test.jar /user/hduser/myinput/input /user/hduser/newoutput"}); 然而,我没有得到想要的输出。下面是我想从JAVA执行的hadoop命令: bin/hadoop jar /home/hado
Runtime.getRuntime().exec(new String[]{"bin/hadoop", "jar /home/hadoop/jar/test.jar /user/hduser/myinput/input /user/hduser/newoutput"});
然而,我没有得到想要的输出。下面是我想从JAVA执行的hadoop命令:
bin/hadoop jar /home/hadoop/jar/test.jar /user/hduser/myinput/input /user/hduser/newoutput
我也没有得到任何例外。Runtime.getRuntime().exec的使用方式是否错误?用以下命令替换您的命令:
Runtime.getRuntime().exec("HADOOP_HOME/bin/hadoop jar /home/hadoop/jar/test.jar /user/hduser/myinput/input /user/hduser/newoutput");
将命令替换为以下命令:
Runtime.getRuntime().exec("HADOOP_HOME/bin/hadoop jar /home/hadoop/jar/test.jar /user/hduser/myinput/input /user/hduser/newoutput");
给出定义驱动程序代码的类名
bin/hadoop jar /home/hadoop/jar/test.jar Package_name.className /user/hduser/myinput/input /user/hduser/newoutput
给出定义驱动程序代码的类名
bin/hadoop jar /home/hadoop/jar/test.jar Package_name.className /user/hduser/myinput/input /user/hduser/newoutput
我的文件在HADOOP_HOME中,是否仍然需要它?如果您的工作目录是HADOOP_HOME,并且您正在其中运行,那么它就不需要了。您确定这是运行此命令的正确方式吗,因为我看不到它在工作。我的文件在HADOOP_HOME中,还需要它吗?如果你的工作目录是HADOOP_HOME,并且你正在其中运行,那么它就不需要了。你确定这是运行这个命令的正确方式吗,因为我看不到它在工作。这也不是给我一个错误或什么。