Rails s: Не удалось найти rake-10.4.2 в любом из источников (Bundler:: GemNotFound)
Когда я запускаю рельсы с помощью:
$ rails s
Я получаю:
/Users/snowcrash/.rvm/gems/[email protected]/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)
Итак, я запустил bundle install
:
$ bundle install
Using rake 10.4.2
но gem list rake
дает:
*** LOCAL GEMS ***
rake (10.1.0, 10.0.4)
Почему я не установил rake 10.4.2
?
Кроме того, когда я запускаю bundle check
, он дает мне:
The Gemfile dependencies are satisfied
который не кажется правильным. Почему?
==== UPDATE
Я исправил проблему с помощью rake
, выполнив:
gem install rake
но почему я должен установить его вручную? Я думал, что это работа Бундлера.
И попытка запустить рельсы снова дала мне еще одну проблему:
Could not find multi_json-1.10.1 in any of the sources (Bundler::GemNotFound)
Ясно, что здесь есть основная проблема. Любые предложения?
Ответы
Ответ 1
У меня была эта проблема с использованием 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
Мое ожидание в том, что, возможно, конфликт где-то в PATH или аналогичный, который был разрешен с полным удалением
У меня была эта ошибка с multi_json раньше. Исправлено, выполнив ручную установку gem install multi_json
Ответ 2
Я думаю, что ваши драгоценные камни связаны с проектом (BUNDLED_PATH, определенным в проектах .bundle/config).
Если вам нужно запустить пакетную версию сервера rails, вы должны ввести консоль
bundle exec rails s
Или, в качестве альтернативы, вы можете генерировать булавки ящиков вложенных графовых кодов с помощью
bundle --binstubs
и запустить созданный заглушка
bin/rails s
Ответ 3
Мне нужно было только исправить enable
script.
cd /opt/rh/ruby-22
rpm -q -f enable
rh-ruby22-runtime-2.0-6.el6.x86_64
diff enable~ enable
1c1
< export PATH=/opt/rh/rh-ruby22/root/usr/bin${PATH:+:${PATH}}
---
> export PATH=/opt/rh/ruby/root/usr/local/bin/:/opt/rh/rh-ruby22/root/usr/bin${PATH:+:${PATH}}
scl enable rh-ruby22 bash
http://www.softwarecollections.org/
Ответ 4
cd /usr/share/metasploit-framework/
Затем используйте следующую команду
bundle install