rails server でエラーになる

bundle exec rails s で以下エラーになる。

load the 'listen' gem. Add `gem 'listen'` to the development group of your Gemfile (LoadError)

 

ググってすぐ出てきた記事はこれをコメントアウトするというもの

config/environment/development.rb

config.file_watcher = ActiveSupport::EventedFileUpdateChecker

 

以下のエラーに変わった。

`block in load_missing_constant': uninitialized constant LetterOpenerWeb (NameError)

 

最初のエラーといい二つめのエラーといいどうやらdevelopment環境で使うGemがうまくインストールされてないと予想。

色々ググった結果以下の記事が参考になった。

bundle installでdevelopmentだけインストールできない

.bundle/config

---
BUNDLE_PATH: "vendor/bundle"
BUNDLE_WITHOUT: "production:test:development"

BUNDLE_WITHOUTの行を消して再度bundle installするとうまくインストールできていなかったと思われるGemたちがインストールされていきrails sがうまくいくようになった。

 

それにしてもなんで急に失敗するようになったんだろう。他のプロジェクトでbundle updateをしたけどそれが関係あるのかな?ないよなー。んーわからない…