我正在尝试从 java 代码中调用 ruby 脚本。 script.rb 文件与 java 代码位于同一文件夹中。
try
{
Process p = Runtime.getRuntime().exec("ruby script.rb");
}
catch (IOException e)
{
e.printStackTrace();
}
但是,脚本没有被执行。对于可以做什么有什么建议吗?
最佳答案
import java.io.*;
public class RubyCall {
public static void main(String[] args) {
try {
Process process = Runtime.getRuntime().exec("ruby script.rb");
process.waitFor();
BufferedReader processIn = new BufferedReader(
new InputStreamReader(process.getInputStream()));
String line;
while ((line = processIn.readLine()) != null) {
System.out.println(line);
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
我认为您只是忘记了进程输出不是系统输出。使用此代码,您将看到打印在标准输出上的过程输出,并查看是否有任何错误。
关于java - 从 java 代码调用 ruby 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24608892/