1

我正在尝试从 Ruby 执行 shell 命令,但为了使这些命令正常工作,必须选择 RVM 环境。我找不到这样做的方法。

例如我正在尝试:

require "rubygems"
require "rvm"

RVM.gemset_use! "ruby-1.9.3-p286@my_project"
%x[rails s]

但看起来 rvm 环境没有被加载,因为找不到 gem。

更新

我看到的唯一方法是

%x[source /Users/fguillen/.rvm/environments/ruby-1.9.3-p286@my_project && rails s]` 

这是最好的方法吗?

4

1 回答 1

2

我认为rvm-with正是您正在寻找的。它可以让你做:

require "rvm/with"
RVM.with "1.9.3-o286@my_project" do |r|
  puts r.execute "rails s"
end
于 2013-09-23T13:58:09.787 回答