Я использовал, sudo bundle install
и это может быть причиной проблемы?
Теперь у меня есть:
gem -v
2.6.14ruby -v
ruby 2.3.5p376 (2017-09-14, редакция 59905) [x86_64-darwin15]jekyll -v
Джекилл 3.6.2bundle -v
Bundler версия 1.16.0.pre.3
Я получаю следующую ошибку при попытке запустить bundle exec jekyll serve
или простоjekyll serve
/Users/myusername/.rvm/rubies/ruby-2.3.5/lib/ruby/site_ruby/2.3.0/rubygems.rb:271:in `find_spec_for_exe': can't find gem bundler (>= 0.a) (Gem::GemNotFoundException)
from /Users/myusername/.rvm/rubies/ruby-2.3.5/lib/ruby/site_ruby/2.3.0/rubygems.rb:299:in `activate_bin_path'
from /Users/myusername/.rvm/gems/ruby-2.3.5/bin/bundle:23:in `<main>'
from /Users/myusername/.rvm/gems/ruby-2.3.5/bin/ruby_executable_hooks:15:in `eval'
from /Users/myusername/.rvm/gems/ruby-2.3.5/bin/ruby_executable_hooks:15:in `<MacBooMacBook-MacBook-MacBook-Pro-MacBook-PrMacBook-MacBooMacBMaMacBMaMaMaMaMaMaMaMaMacBMaMaMaMacBMa
Кроме того, при доступе к папке, в которой у меня есть блог, cd my_path
я получаю следующее сообщение:
ВМ использовала ваш Gemfile для выбора Ruby, все хорошо - Heroku делает это тоже, вы можете игнорировать эти предупреждения с помощью 'rvm rvmrc warning ignore / Library / WebServer / Documents / blog / Gemfile'. Чтобы игнорировать предупреждение для всех файлов, запустите «rvm rvmrc warning ignore allGemfiles». Неизвестная версия интерпретатора ruby (не знаю, как с ней обращаться): RUBY_VERSION.
Я понятия не имею, как это решить. Я просто хочу создать свой статический блог и, честно говоря, я не имею ни малейшего представления о Ruby, Gem или Bundle :) Так что я был бы признателен за некоторые идеи!
Ответы:
Проблема в моем случае заключается в том, что у
Gemfile.lock
файла былаBUNDLED_WITH
версия1.16.1
иgem install bundler
установленная версия2.0.1
, поэтому при поиске правильной папки произошла несовпадение версийgem install bundler -v 1.16.1
починил этоКонечно, вы также можете изменить
Gemfile.lock
«SBUNDLED_WITH
с последнейbundler
версией и использовать недавнее программное обеспечение, так как Sam3000 предполагаетисточник
BUNDLED_WITH
версию на последнюю версию bundler. Это сработало для меня, а также избавило меня от необходимости устаревшего программного обеспечения :)gem install bundler -v 1.16.1
и теперь, еслиgem.bat list bundler
я запускаю, я получаю упаковщик (2.0.1, 1.16.1, 1.9.6). Я не могу изменить текущую версию: выполнениеbundle.bat _1.16.1 install
дает мне эту ошибку:Could not find command "_1.16.1"
. У вас есть идеи, поэтому мне не нужно создавать новый вопрос? Спасибо!обновит rubygems и исправит проблему.
источник
gem update --system
у меня работали:ruby
2.5.0 ,bundler
2.0.1 ,macOS
10.13.6 .Обновить:
Согласно @ noraj игровому ответа и комментарий @Niels Kristian, в следующей команда должна делать эту работу.
Я написал это на случай, если у кого-то возникнет проблема, как у меня.
gem install bundler
показывает, что все устанавливается хорошо.Когда я печатал,
bundle
была ошибка:И в папке
/Users/nikkov/.rvm/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/
не былоbundler-1.16.0
папки.Я исправил это с
sudo gem install bundler
источник
Реальный ответ здесь, если вы пытаетесь установить bundler 2.0.1 или 2.0.0 из-за Bundler, требующего RubyGems v3.0.0
Для получения дополнительной информации см .: https://bundler.io/blog/2019/01/04/an-update-on-the-bundler-2-release.html.
источник
Это исправило это:
rm Gemfile.lock
bundle install
сноваРЕДАКТИРОВАТЬ: НЕ ДЕЛАЙТЕ ЭТОГО В ПРОИЗВОДСТВЕ!
Для производства перейдите к этому ответу: https://stackoverflow.com/posts/54083113/revisions
источник
Gemfile.lock
должно рассматриваться как последнее средство, так как это может привести к другим проблемам.Причина в том, что вы используете текущую среду ruby, вы получили другую версию bundler с версией в
Gemfile.lock
.Gemfile.lock
, это ничего не сломает, если случится что-то невероятное.Gemfile.lock
и бегиbundle install
.источник
1.17
использованиемgem install bundler -v 1.17
Если вы изменили версию ruby, которую используете
rvm use
, удалите Gemfile.lock и попробуйте снова.источник
Откройте Gemfile.lock, который находится в корне папки вашего приложения. Прокрутите до конца файла и увидите используемую версию пакета. Затем убедитесь, что вы установили используемую версию пакета:
Или - удалите Gemfile.lock и комплект, если у вас установлена более поздняя версия комплекта.
Выбор за вами, мой друг.
источник
Gemfile.lock
папке, сделала свое дело!установить упаковщик, соответствующий вашему
Gemfile.lock
использованию:источник
В моем случае вышеупомянутые предложения не работали для меня. У меня был немного другой сценарий.
Когда я попытался установить
bundler
с помощьюgem install bundler
.. Но я получалтогда я попытался с помощью
sudo gem install bundler
тогда я получалтогда я попробовал с
sudo gem install bundler -n /usr/local/bin
(Просто не/usr/bin
работай в моем случае).И тогда успешно установлен
bundler
РЕДАКТИРОВАТЬ: я использую MacOS, может быть,
/usr/bin
не работать для меня по этой причине ( https://stackoverflow.com/a/34989655/3786657 комментарий)источник
У меня была такая же проблема сегодня. Я решаю эту проблему, удаляя любой
PATH
в.bashrc
для старшихrvm
.источник
Моя проблема была в том, что я использую RVM и у меня была активирована неправильная версия Ruby ...
Надеюсь, это поможет по крайней мере одному человеку
источник
В добавление ко многим ответам моя проблема возникла из-за желания использовать рубин докера в качестве основы, а затем использовать rbenv сверху. Это многое испортит.
Я исправил это в этом случае:
После этого rbenv работал нормально. Не уверен, как эти env vars загружались в первую очередь ...
источник
Я понизил рубин с 2.5.x до 2.4.x в моем конкретном случае.
источник
Я должен был сделать
rake clean --force
. Затем сделалgem install rake
и так далее.источник