前提・実現したいこと
rubyの書籍を一通り読み終わりRuby on Railsに戻ってきました。
rails new で新しいフォルダの作成はできましたが、rails sでエラーが出ており、どうしても進めません。
rails cでも似たようなエラーが出ます。
発生している問題・エラーメッセージ
Beginning in Rails 4, Rails ships with a `rails` binstub at ./bin/rails that should be used instead of the Bundler-generated `rails` binstub. If you are seeing this message, your binstub at ./bin/rails was generated by Bundler instead of Rails. You might need to regenerate your `rails` binstub locally and add it to source control: rails app:update:bin # Bear in mind this generates other binstubs # too that you may or may not want (like yarn) If you already have Rails binstubs in source control, you might be inadvertently overwriting them during deployment by using bundle install with the --binstubs option. If your application was created prior to Rails 4, here's how to upgrade: bundle config --delete bin # Turn off Bundler's stub generator rails app:update:bin # Use the new Rails executables git add bin # Add bin/ to source control You may need to remove bin/ from your .gitignore as well. When you install a gem whose executable you want to use in your app, generate it and add it to source control: bundle binstubs some-gem-name git add bin/new-executable Traceback (most recent call last): 4: from /usr/local/bin/rails:23:in `<main>' 3: from /usr/local/bin/rails:23:in `load' 2: from /Library/Ruby/Gems/2.6.0/gems/railties-6.0.3.2/exe/rails:10:in `<top (required)>' 1: from /Library/Ruby/Site/2.6.0/rubygems/core_ext/kernel_require.rb:92:in `require' /Library/Ruby/Site/2.6.0/rubygems/core_ext/kernel_require.rb:92:in `require': cannot load such file -- rails/cli (LoadError) 5: from /usr/local/bin/rails:23:in `<main>' 4: from /usr/local/bin/rails:23:in `load' 3: from /Library/Ruby/Gems/2.6.0/gems/railties-6.0.3.2/exe/rails:10:in `<top (required)>' 2: from /Library/Ruby/Site/2.6.0/rubygems/core_ext/kernel_require.rb:156:in `require' 1: from /Library/Ruby/Site/2.6.0/rubygems/core_ext/kernel_require.rb:168:in `rescue in require' /Library/Ruby/Site/2.6.0/rubygems/core_ext/kernel_require.rb:168:in `require': cannot load such file -- rails/cli (LoadError)
最後の
cannot load such file -- rails/cli (LoadError)でrailsのcliが読み込めなかった的なエラーが書かれていますが、require.rbの168行目は以下のコードが記述されています。
return gem_original_require(path) if require_again
試したこと
https://qiita.com/taka0125/items/c8d161c591347e9893c9
エラー文を翻訳してみたりしてbinstubというキーワードからbinに関係していると目処をつけ、上記のURLに記述されているコードを下記の順で実行してみました。
$ cd RAILS_ROOT $ rm -rf ./bin $ rm -rf path_to_binstubs $ bundle exec rake rails:update:bin bundle install --binstubs spring binstub --all $ ./bin/rails console
そしてエラー文にあるコードを下記の順で実行してみました。
rails app:update:bin bundle config --delete bin rails app:update:bin git add bin
再びrails sを試してみましたが、結果は同じでした。
補足情報(FW/ツールのバージョンなど)
Ruby 2.6.3p62
Rails 6.0.3.2
macOS Catalina 10.15.6
VSCOde 1.47.3
VSCodeでRailsのバージョンを確認しようとしたところ、rails sと同様のエラー文が表示されたので、macのターミナルで確認をしました。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/07 00:51