我正在尝试使用Java exec来运行我的脚本并获得结果并在我的程序中使用它。
我有以下代码行。
public static void main(String[] argv) throws Exception {
Process p = Runtime.getRuntime().exec("phantomjs quebecPhantom.js");
BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = in.readLine();
System.out.println(" [x] Sent '" + line + "'");
}
我希望我的PhantomJS Script
被执行,而line
变量会获取Script
的输出。但是,我的脚本没有执行(它应该花费更多的时间,它应该产生一些我不会看到的屏幕截图)。然后,line
变量取null
值。
我应该考虑更多的东西来执行我的脚本吗?
答案 0 :(得分:0)
上面代码行的问题是我需要获取phantomjs的路径以及我想要执行的命令中的脚本。然后该行应改变如下,
Process p = Runtime.getRuntime().exec("path to phantomjs" + " " + "path to the script");
就我而言,就像
Process p = Runtime.getRuntime().exec("/usr/bin/phantomjs /home/name/quebecPhantom.js");