Я выполняю следующий сценарий:
gem install rdoc --no-document
gem install bundle
bundle
вывод:
+ gem install rdoc --no-document
Successfully installed rdoc-6.1.1
1 gem installed
+ gem install bundle
Successfully installed bundle-0.0.1
Parsing documentation for bundle-0.0.1
Done installing documentation for bundle after 2 seconds
1 gem installed
1 gem installed
+ bundle install
/usr/lib/ruby/2.5.0/rubygems.rb:289:in `find_spec_for_exe': can't find gem bundler (>= 0.a) with executable bundle (Gem::GemNotFoundException)
from /usr/lib/ruby/2.5.0/rubygems.rb:308:in `activate_bin_path'
from /srv/myuser/.gem/ruby/2.5.0/bin/bundle:23:in `<main>'
Я добавил /srv/myuser/.gem/ruby/2.5.0/bin
в свой путь, чтобы иметь возможность устанавливать драгоценные камни.
на gem env
шоу
RubyGems Environment:
- RUBYGEMS VERSION: 2.7.7
- RUBY VERSION: 2.5.1 (2018-03-29 patchlevel 57) [x86_64-linux]
- INSTALLATION DIRECTORY: /usr/lib/ruby/gems/2.5.0
- USER INSTALLATION DIRECTORY: /srv/myuser/.gem/ruby/2.5.0
- RUBY EXECUTABLE: /usr/bin/ruby
- EXECUTABLE DIRECTORY: /usr/bin
- SPEC CACHE DIRECTORY: /srv/myuser/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /usr/lib/ruby/gems/2.5.0
- /srv/myuser/.gem/ruby/2.5.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- "gem" => "--user-install"
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /usr/local/sbin
- /usr/local/bin
- /usr/bin
gem list
показывает установленные драгоценные камни. Я также могу найти связку, когда выполняю:
ls -ltrah /srv/myuser/.gem/ruby/2.5.0/bin
Я также пытался установить бандлер, но это тоже не помогло. Что я делаю неправильно?
gem which bundle
ничего не показывает. gem spec bundle
показывает это.
Обновление: я пытался установить сборщик перед запуском пакета, но та же проблема возникает, когда:
gem list bundle
показывает
bundle (0.0.1)
bundler (2.0.1)
Gemfile.lock
и снова запустить установку пакетаrubygems
до более новой версии - это тоже должно решить проблему.gem update --system
обновить до последней версии (или хотя быgem update --system '2.7.10' to stay on 2.7.x version of RubyGems
.shell gem install bundler -v "$(grep -A 1 "BUNDLED WITH" Gemfile.lock | tail -n 1)"
вы можете прочитать их статью для получения дополнительной информации.Согласно описанию, упомянутому в сообщении, перед запуском указанной ниже команды:
в скрипте вам нужно выполнить следующую команду:
Итак, последовательность команд для работы будет следующей:
Если не работает, обновите команду сборщика:
gem install bundler -v '1.17.3'
Причина сбоя в работе Bundler 2.0 указана в указанной ниже ссылке:
https://bundler.io/blog/2019/01/04/an-update-on-the-bundler-2-release.html
источник
Я даже не мог этого сделать
bundle -v
. Это разобралось:Получил информацию отсюда (аналогичная проблема): find_spec_for_exe ': не удается найти сборщик гемов (> = 0.a) (Gem :: GemNotFoundException)
Возможно какое-то несовпадение версий между ruby + gem + bundler
источник
gem install bundler -v '< 2.0'
источник
Недавно у меня была такая же проблема. В моем случае я установил в сборщике версию, отличную от той, которая записана в Gemfile.lock. пожалуйста, проверьте
источник
Я столкнулся с той же проблемой. Проблема вызвана тем, что RubyGems не может найти исполняемый пакет для гема сборщика в системе.
Чтобы исправить это, сначала запустите
gem install bundler
если у вас не установлен пакет gem локально, запустите
gem update --system
Это все
надеюсь, это поможет
источник
Вы должны установить именно ту версию Bundler, которую ищет RubyGems, запустив:
$ gem install bundler -v "$(grep -A 1 "BUNDLED WITH" Gemfile.lock | tail -n 1)"
источник
Я столкнулся с той же ошибкой сегодня. Версия пакета, которую я ранее установил в своей системе, была: 1.16.6.
Следуйте инструкциям в официальных документах по сборщику о том, как перейти на Bundler 2, и два следующих шага сделали свое дело:
gem install bundler
(Помогает получить последнюю версию сборщика, которая на сегодняшний день - 2.0.2)bundle update --bundler
источник
Я видел подобное сообщение об ошибке для пакета travis после обновления mac os до Catalina.
Traceback (most recent call last): 2: from /usr/local/bin/travis:22:in `<main>' 1: from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems.rb:263:in `bin_path' /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems.rb:284:in `find_spec_for_exe': can't find gem travis (>= 0.a) with executable travis (Gem::GemNotFoundException)
Чтобы решить эту проблему, я переустановил Travis из исходников.
источник