次のスクリプトを実行しています。
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をインストールできました。
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
は、インストールされているgemを示します。私が実行するときにもバンドルを見つけることができます:
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)
今日も同じエラーに直面しました。以前システムにインストールしたバンドラーのバージョンは1.16.6でした。
Bundler 2にアップグレードする方法 の公式のバンドラードキュメントの指示に従い、以下の2つのステップでうまくいきました。
gem install bundler
(今日の2.0.2である最新バージョンのバンドラーを入手するのに役立ちます)bundle update --bundler
次のコマンドを実行して、RubyGemsが探しているBundlerの正確なバージョンをインストールする必要があります。
$ gem install bundler -v "$(grep -A 1 "BUNDLED WITH" Gemfile.lock | tail -n 1)"
Mac OSをカタリナにアップグレードした後、トラビスバンドルについて同様のエラーメッセージが表示されました。
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を再インストールしました。
brew remove travis;
brew install -s travis