2012-04-27 68 views
6

我创建了一个rvm 1.8.7用于运行较旧的rails项目。不同rvm gemsets中的耙式版本

当我运行rake,有一个警告:

警告: '需要'耙/ rdoctask' 已经过时了。请使用'require 'rdoc/task'(位于RDoc 2.4.2+)''。

到安装的rake较新版本这是由于:

rake (0.9.2.2, 0.8.7) 

通过rvm@global宝石

$ gem list -d rake 

*** LOCAL GEMS *** 

rake (0.9.2.2, 0.8.7) 
Author: Jim Weirich 
Rubyforge: http://rubyforge.org/projects/rake 
Homepage: http://rake.rubyforge.org 
Installed at (0.9.2.2): /Users/horace/.rvm/gems/[email protected] 
      (0.8.7): /Users/horace/.rvm/gems/ruby-1.8.7-p358 

Ruby based make-like utility. 

如果我尝试在@global宝石删除rake 0.9.2.2,有警告:

You have requested to uninstall the gem: 
rake-0.9.2.2 
rvm-1.11.3.3 depends on [rake (>= 0)] 
If you remove this gems, one or more dependencies will not be met. 
Continue with Uninstall? [Yn] 

那么,如何在我的rvm 1.8.7中使用rake 0.8.7作为默认值?

回答

11

二进制文件的gem包装让您指定要运行的特定程序的版本。所以,你可以去

rake _0.8.7_ [stuff] 

或者,如果你喜欢,你可以修改使用该版本在默认情况下(但要小心的是需要更新的耙宝石和RVM的)的包装。更改线路

version = ">= 0" 

version = "= 0.8.7" 
+0

哪里是_The wrapper_? 'rvm'的 – ohho 2012-04-27 03:58:25

+0

我不知道!尝试'哪个rake'或'type -p rake'? – 2012-04-27 04:00:30

+1

它是'〜/ .rvm/gems/ruby​​-1.8.7-p358/bin/rake',谢谢 – ohho 2012-04-27 04:06:02