我试图将我的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已经解决了这个问题。答案 0 :(得分:1)
使用bundle exec ....
在开始时使用bundle exec运行命令,从app目录启动一个安装了Gemfile
的gem,没有bundle exec
它运行安装在系统中的gem。