2015-08-08 45 views
0

我試圖將我的Rake版本從0.9.6降級到0.8.7。無法更改耙式版本

這是因爲當我當前運行rake db:create時出現WARNING: 'require 'rake/rdoctask'' is deprecated. Please use 'require 'rdoc/task' (in RDoc 2.4.2+)' instead.錯誤。 (我也確保我在Rakefile中有'rdoc/task')。

所以我目前有2個版本的耙安裝(0.9.6和0.8.7),但只有0.9.6被激活在我的項目文件夾。

到目前爲止,我已經嘗試:

  • gem 'rake', '0.8.7'但是這給了我unknown command rake,
  • gem uninstall rake -v 0.9.6但是這給了我gem "rake" cannot be uninstalled because it is a default gem
  • gem uninstall rake但這僅刪除舊版本。
  • bundle install與我的Gemfile中指定的0.8.7一樣,輸出沒問題,但是當我運行rake --version時它仍然顯示0.9.6版本。

這裏是我的Gemfile:

source :rubygems 
    gem 'rails','2.3.5' 
    gem 'i18n','0.4.2' 
    gem 'declarative_authorization','0.5.1' 
    gem 'mysql','2.8.1' 
    gem 'rake','0.8.7' 
    gem 'rush','0.6.8' 
    gem "iconv", "~> 1.0.3" 

和我Gemfile.lock的

GEM 
    remote: http://rubygems.org/ 
    specs: 
    actionmailer (2.3.5) 
     actionpack (= 2.3.5) 
    actionpack (2.3.5) 
     activesupport (= 2.3.5) 
     rack (~> 1.0.0) 
    activerecord (2.3.5) 
     activesupport (= 2.3.5) 
    activeresource (2.3.5) 
     activesupport (= 2.3.5) 
    activesupport (2.3.5) 
    declarative_authorization (0.5.1) 
    i18n (0.4.2) 
    iconv (1.0.4) 
    mysql (2.8.1) 
    rack (1.0.1) 
    rails (2.3.5) 
     actionmailer (= 2.3.5) 
     actionpack (= 2.3.5) 
     activerecord (= 2.3.5) 
     activeresource (= 2.3.5) 
     activesupport (= 2.3.5) 
     rake (>= 0.8.3) 
    rake (0.8.7) 
    rush (0.6.8) 
     session 
    session (3.2.0) 

PLATFORMS 
    ruby 

DEPENDENCIES 
    declarative_authorization (= 0.5.1) 
    i18n (= 0.4.2) 
    iconv (~> 1.0.3) 
    mysql (= 2.8.1) 
    rails (= 2.3.5) 
    rake (= 0.8.7) 
    rush (= 0.6.8) 

BUNDLED WITH 
    1.10.6 

我想看看無處不在,但沒有到目前爲止的工作。任何提示?

謝謝!

編輯:降級紅寶石從2.0.0到1.8.7已經解決了這個問題。

回答

1

前置與bundle exec ....

項目運行與開始,推出創業板是什麼從應用程序目錄Gemfile安裝包的exec命令所有的命令,沒有bundle exec它運行的寶石什麼安裝到系統。

+0

感謝您的回答。如果我運行'bundle exec rake db:create',它會給我'rake中止! ' 另外我正在尋找的是最好不必「捆綁exec」耙。 – Lucbug

+0

@Lucbug這意味着,你耙任務成功運行,但abourted。在這裏我向你展示在項目中使用gem的正確方式,無需降級 –

+0

你應該在項目中使用'bundle exec ...'(不在系統中),否則可能會導致版本不匹配。 –