如何从命令行运行Ruby脚本并使用Java代码获取响应?

时间:2013-08-07 17:03:59

标签: java ruby cmd command-line-arguments command-prompt

我需要使用Java代码中的命令行运行Ruby脚本。

例如我的文件位于路径 D:/MyProject/myruby.rb

我想从命令行运行此文件并从中获取响应。我怎样才能做到这一点?

此外,我们如何在 myruby.rb 中返回可能在命令行中捕获的响应。

1 个答案:

答案 0 :(得分:1)

您可以使用:

String[] commands = {"ruby","D:/MyProject/myruby.rb"};

Runtime rt = Runtime.getRuntime();

Process proc;
try
{
    proc = rt.exec(commands);
    BufferedReader stdInput = new BufferedReader(new InputStreamReader(proc.getInputStream()));
    String s;

    while ((s = stdInput.readLine()) != null) 
    {
        System.out.println(s);
    }
}
catch (IOException e)
{
    e.printStackTrace();
}