2013-08-07 1 views
0

Мне нужно запустить скрипт Ruby с помощью командной строки из Java-кода.Как запустить скрипт Ruby из командной строки и получить ответ с помощью Java-кода?

Например мой файл находится в пути D: /MyProject/myruby.rb

Я хочу, чтобы запустить этот файл из командной строки и получить ответ от этого. Как я могу это достичь?

Кроме того, как мы можем вернуть ответ в myruby.rb, который может быть обнаружен в командной строке.

+0

Отвечает ли это на ваш вопрос: http://stackoverflow.com/questions/1369860/implementing-the-system-command-in-java? –

ответ

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(); 
} 
+0

Мой Ruby-файл находится в каталоге D:/MyProject. Итак, где можно указать путь – Prince

+1

Затем вы должны указать полный путь в массиве String String [] commands = {"ruby", "D: /MyProject/myruby.rb"}; – amaurs