Ruby puma-dev が間違ったバージョンの Ruby を使用している
概要
約 1 週間これをデバッグしていましたが、進展がなかったので、ここに取り上げようと思いました。私はこれについて何時間も研究し、他の StackOverflow ソリューションを見つめてきましたが、何の進歩もありませんでした。現在、Ruby 2.6.5 で puma-dev を実行しています。 puma-dev を実行すると、必ずこのエラー メッセージが表示されます。 (セキュリティ上の理由からプロジェクト名などを変更します):
* Directory for apps: /Users/(myname)/.puma-dev
* Domains: test
* DNS Server port: 9253
* HTTP Server port: 9280
* HTTPS Server port: 9283
! Puma dev running...
! Booting app 'docugenerator-02fe76f7' on socket /Users/(myname)/.puma-dev/docugen/tmp/puma-dev-3410.sock
docugenerator-02fe76f7[3421]: sh: no job control in this shell
docugenerator-02fe76f7[3421]: Puma starting in single mode...
docugenerator-02fe76f7[3421]: * Version 4.3.8 (ruby 2.6.3-p62), codename: Mysterious Traveller
docugenerator-02fe76f7[3421]: * Min threads: 0, max threads: 5
docugenerator-02fe76f7[3421]: * Environment: development
docugenerator-02fe76f7[3421]: ! Unable to load application: Bundler::RubyVersionMismatch: Your Ruby version is 2.6.3, but your Gemfile specified 2.6.5
docugenerator-02fe76f7[3421]: /Library/Ruby/Gems/2.6.0/gems/bundler-2.1.4/lib/bundler/definition.rb:495:in `validate_ruby!': Your Ruby version is 2.6.3, but your Gemfile specified 2.6.5 (Bundler::RubyVersionMismatch)
私がこれまでに試したことは次のとおりです。
これまでのところ何の進歩もなく、ページをリロードしたり puma-dev サーバーを再起動したりするたびにエラーが発生するだけです。ヒントや助けをいただければ幸いです。
解決策
puma は間違った Ruby バージョンで実行されているようです。 rbenv は、使用する Ruby のバージョンをいくつかの方法で決定します (https://github.com/rbenv/rbenv#choosing-the-ruby-version を参照)。rbenv が決定しようとする Ruby のバージョンの順序が次のとおりであることを確認する必要があります。正しい。最も簡単な方法は、プロジェクトに .ruby バージョンを作成することです。
.ruby-バージョン
2.6.5