2014-01-15 56 views
0

我在Ruby腳本(特別是Vagrantfile)中運行,我想調用另一個ruby可執行文件(特別是針對系統ruby安裝的berks)。我知道我可以做類似調用不同的ruby解釋器

PATH=/usr/bin GEM_PATH=/var/lib/ruby/1.9.1 berks ... 

但是,這不是很便攜。 (例如,不同的機器需要不同的GEM_PATH)。那麼,如何從Ruby腳本中調用針對不同Ruby環境安裝的腳本?

回答

2

那麼,手頭的任務聽起來並不是非常便攜,因爲它的全部原因是不同地方安裝了不同紅寶石的系統特定怪癖。並不是所有的系統都會有這些特定的Ruby版本。

對我來說,聽起來像你最好的選擇可能是讓用戶設置某些環境變量(我不知道,$ BERKS_SUBRUBY_PATH或其他),並使用它們,如果他們設置。這樣,任何需要使用該解決方法的人都可以輕鬆地完成此任務,但是並不是強制每個人都擁有相同的系統配置。