Rails rake更新问题 - 无法在任何来源中找到rake-10.4.2

时间:2014-12-22 22:42:44

标签: ruby-on-rails ruby-on-rails-4 gem rake bundler

我正在尝试(没有太大成功)在rails项目上运行rake db:migrate,但它会返回:

Could not find rake-10.4.2 in any of the sources
Run bundle install to install missing gems.

我跑了bundle install并且运行良好 - 安装了rake 10.4.2,但是当我跑:rake --version时(出于某种原因你不能做rake -v ???)它显示: rake, version 0.9.6

我运行了捆绑更新rake并返回了我的宝石列表,然后:Your bundle is updated!

为什么rake不更新?有没有什么我做错了(我刚开始使用rails btw - 所以这可能很简单)

非常感谢任何帮助

2 个答案:

答案 0 :(得分:16)

TL; DR:gem install rake -v '10.4.2'

所以,我自己有这个问题。我想知道为什么rails s会在昨天而不是今天工作。

首先,我检查了我是否在正确的目录中,我是。 然后我重新运行bundle install以确保安装了rake。它是,我能够在我的Gemfile.lock中看到它 所以我认为我的gemset可能已损坏(我使用RVM)。 rvm gemset empty然后bundle install

但是,每当我运行rails s时,我都会遇到此错误。 bin/rails s工作,bundle exec rails s。但是我不想要一个前缀,我想让rails工作(它适用于其他rails项目)

最终我尝试gem install rake并且它有效!我建议在命令中添加-v '10.4.2',以便获得正确的rake版本。现在当我which rake时,我获得了项目的gemset:"/Users/cm022291/.rvm/gems/ruby-2.2.1@project_gemset/bin/rake"

当我运行rails s时,服务器成功启动。

答案 1 :(得分:2)

尝试输入

bundle exec rake db:migrate

这将确保被调用的Rake是你捆绑的那个。