无法更改佣金版本

时间:2015-08-08 20:34:26

标签: ruby-on-rails ruby rubygems rake version

我试图将我的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个版本的rake(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 个答案:

答案 0 :(得分:1)

使用bundle exec ....

在项目中添加所有命令

在开始时使用bundle exec运行命令,从app目录启动一个安装了Gemfile的gem,没有bundle exec它运行安装在系统中的gem。