2
我正在爲一些工具構建一個web界面,我希望能夠在Bundler上下文中運行命令或gems,就像'bundle exec'命令一樣,除了在我的代碼中。是否可以使用代碼中的「bundle exec」功能?
所以通常情況下,我會在命令行上寫:
bundle exec rspec
有沒有一種方法,我可以做到同樣的事情,但編程?
我正在爲一些工具構建一個web界面,我希望能夠在Bundler上下文中運行命令或gems,就像'bundle exec'命令一樣,除了在我的代碼中。是否可以使用代碼中的「bundle exec」功能?
所以通常情況下,我會在命令行上寫:
bundle exec rspec
有沒有一種方法,我可以做到同樣的事情,但編程?
如果你想運行一些紅寶石捆綁寶石可以只需要「捆綁/設置」:
require 'bundler/setup'
require 'rspec' # loads the version specified in Gemfile
你可以在Ruby中用反引號(`)封裝shell命令。
def run_specs
`bundle exec rspec | grep foo`
end
所以,如果我設置$ BUNDLE_GEMFILE作爲工具的Gemfile(像捆紮機--binstubs選項),這將在這種情況下運行它? – xiy
是的,它應該。 Binstub就是一個很好的例子。 –
太棒了,謝謝! – xiy