2010-03-15 149 views
3

如果我在配置/环境/ test.rb文件中定义了几个宝石是这样的:导轨 - 耙:宝石:安装 - 不安装宝石

config.gem "rspec" 
config.gem "rspec-rails" 
config.gem "mocha" 

,然后运行“耙宝石:安装RAILS_ENV =测试”

我得到以下错误:安装像它说,它会永远继续递归这样的:

Missing these required gems: 
    mocha 

Run `rake gems:install` to install the missing gems. 
但是如果我跑耙宝石

我该如何使用rake(不是gem install)真正安装gem?

谢谢!

+1

你为什么要安装与RAILS_ENV =测试参数宝石摩卡? – 2010-03-16 04:42:01

+1

,因为这些宝石只关心测试并在config/environments/test.rb中定义。因此我需要使用RAILS_ENV = test。 – Hamish 2010-03-16 23:27:33

回答

2

我想知道,您的rake文件或environment.rb文件中是否有来自摩卡宝石的参考?我以前见过类似这样的问题,它表现为这种类型的问题。

尝试用...

gem install mocha 

'手动' 安装摩卡然后看看是否可以运行rake gems:install

0

我发现这是一个GEM_PATH问题。基本上,rails不能找到你已经安装的宝石,即使它们在那里,它们也是完全不可见的。有点奇怪,但嘿。

Dreamhost上,我不得不配置行:

ENV['GEM_PATH'] = '/home/<my_account>/.gems:/usr/lib/ruby/gems/1.8/gems' 
在配置

/environment.rb中

,但在我的dev的盒子,这并不为我工作的,必须完全删除。 YMMV,但我建议这是一个开始寻找的好地方。

1

我也遇到了这个问题,并按照指示here来解决它。具体来说,删除和重新生成lib/tasks/rspec.rake非常重要。此外,加入

:lib => false 

config.gem "rspec", :lib => false, :version => ">= 1.2.0" 

帮助。

0

您正在使用哪个平台?如果它的窗口,然后

执行以下命令及其作品

创业板安装--platform = mswin32