当我开始使用rails时:
$ rails s
Run Code Online (Sandbox Code Playgroud)
我明白了:
/Users/snowcrash/.rvm/gems/ruby-2.1.5@global/gems/bundler-1.3.5/lib/bundler/spec_set.rb:92:in `block in materialize': Could not find rake-10.4.2 in any of the sources (Bundler::GemNotFound)
Run Code Online (Sandbox Code Playgroud)
所以,我跑了bundle install:
$ bundle install
Using rake 10.4.2
Run Code Online (Sandbox Code Playgroud)
但gem list rake给出:
*** LOCAL GEMS ***
rake (10.1.0, 10.0.4)
Run Code Online (Sandbox Code Playgroud)
怎么没有rake 10.4.2安装?
此外,当我运行bundle check它给我:
The Gemfile's dependencies are satisfied
Run Code Online (Sandbox Code Playgroud)
这似乎不正确.为什么?
====更新
我通过以下方式修复了问题rake:
gem install rake
Run Code Online (Sandbox Code Playgroud)
但为什么我必须手动安装它?我以为那是Bundler的工作.
并尝试再次启动rails给了我另一个问题:
Could not find multi_json-1.10.1 in any of the sources (Bundler::GemNotFound)
Run Code Online (Sandbox Code Playgroud)
显然,这里存在一些潜在的问题.有什么建议?
And*_*yan 16
我使用rbenv为我的ruby 2.2.0安装有这个问题.通过反复试验修复.
我尝试过,gem install rake但这并没有解决它.所以我做了:
gem uninstall rake
rbenv global 2.1.1
rbenv rehash
rbenv uninstall rake #this time gives error "rake is a default gem"
rbenv global 2.2.0
rbenv rehash
gem install rake
rails s #works this time
Run Code Online (Sandbox Code Playgroud)
我的期望是在PATH或类似的地方可能存在冲突,并通过完全删除解决
我之前遇到过multi_json的错误.通过手动安装修复它gem install multi_json
我认为你的宝石与项目捆绑在一起(BUNDLED_PATH在项目.bundle/config中定义).
如果需要运行捆绑版本的rails服务器,则必须键入console
bundle exec rails s
Run Code Online (Sandbox Code Playgroud)
或者,您也可以生成捆绑的gem逗号的bin存根
bundle --binstubs
Run Code Online (Sandbox Code Playgroud)
并运行生成的存根
bin/rails s
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32429 次 |
| 最近记录: |