2011-09-28 56 views
0

Ruby非常新,所以請試着去看看我的無知。因爲我目前不知道我在說什麼。不過,我知道有能力做我想做的事情。基本上我有一些可以通過命令行使用的JAVA服務器端。我試圖弄清楚在哪裏以及如何開始溝通,在我沒有實際輸入到cli的同一個概念中輸入它。基本上我想傳遞命令就像我使用CLI一樣,但我不是。那有意義嗎?軌道上的紅寶石命令行交互

它用於CLI到UI的轉換。我已經看到了以這種方式完成RoR到JAVA的過程,但從哪裏開始,我無法告訴你要拯救我的生命。

回答

1

首先,我建議至少看看jRuby,它可以與java類交互,就好像它們是ruby類。

如果你仍然想要cli集成,那麼樸素的方法非常簡單,你所需要做的就是將你的cli命令包裝成反引號(`),並且它將執行命令,就好像你將它鍵入到shell中一樣,以字符串形式返回結果。

如果您需要非常頻繁地執行此操作,請查看https://github.com/rtomayko/posix-spawn,這是一種更有效的方法,然後是反向方法。

1

如果Java程序有自己的命令提示符,請查看popen。它允許您打開一個子進程作爲I/O流,允許您發送輸入並讀取其輸出。如果您只需要啓動該過程並獲得其輸出,請按照Matt Briggs的建議使用反引號:

output = `the-command-to-start-the-java-program`