2012-04-27 12 views
6

Tôi đã tạo một rvm 1.8.7 để chạy các dự án đường ray cũ hơn.phiên bản cào trong các viên đá quý rvm khác nhau

Khi tôi chạy rake, có một cảnh báo:

CẢNH BÁO: 'đòi hỏi 'cào/rdoctask'' bị phản đối. Thay vào đó, hãy sử dụng 'require ' rdoc/task '(trong RDoc 2.4.2+)'.

Đó là do một phiên bản mới hơn của rake được cài đặt:

rake (0.9.2.2, 0.8.7) 

bởi rvm trong @global gemset

$ 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. 

Nếu tôi cố gắng xóa rake 0.9.2.2 trong @global gemset, có cảnh báo:

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] 

Vì vậy, làm cách nào tôi có thể sử dụng rake 0.8.7 làm mặc định trong rvm 1.8.7 của mình?

Trả lời

11

Trình bao bọc đá quý cho các tệp nhị phân cho phép bạn chỉ định phiên bản của một chương trình cụ thể bạn muốn chạy. Vì vậy, bạn có thể đi

rake _0.8.7_ [stuff] 

Hoặc, nếu bạn thích, bạn có thể sửa đổi các wrapper để sử dụng phiên bản theo mặc định (nhưng phải cẩn thận về đá quý và của RVM cần rake mới hơn). Thay đổi dòng

version = ">= 0" 

để

version = "= 0.8.7" 
+0

đâu _the wrapper_? – ohho

+0

cho 'rvm' Tôi không biết! thử 'rake' hoặc' type -p rake' nào? –

+1

nó là '~/.rvm/gems/ruby-1.8.7-p358/bin/rake', nhờ – ohho