今回はサーバー起動時(rails s)に、Webpackerのエラーが起こった時の対処方法について解説したいと思います。基本的にはWebpackerがインストールされていないことによるエラーなので、焦らず以下の手順で解決していきましょう。
エラー内容
以下のように新規アプリケーション(今回はsearch-productというアプリケーション)を立ち上げました。
$ rails new search-product -d mysql
その後データベースを作成し、マイグレートも行いました。
$ rails db:create
$ rails db:migrate
しかし「rails s」コマンドでサーバーを立ち上げようとすると、以下のようなエラーが表示されてしまいます。
/Users/〇〇〇〇/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/webpacker-4.2.2/lib/webpacker/configuration.rb:95:in `rescue in load':
Webpacker configuration file not found /Users/〇〇〇〇/projects/search-product/config/webpacker.yml.
Please run rails webpacker:install Error: No such file or directory @ rb_sysopen - /Users/〇〇〇〇/projects/search-product/config/webpacker.yml (RuntimeError)
Webpackerとは、Ruby on Railsで用いるWebpackを使うためのgemパッケージです。
Webpackを用いることで、フロントエンド開発(CSSやJavaScript、画像など)をスマートに行うことができます。
また、Webpackはnode.jsのモジュールの1つです。
エラー原因
Rails6.0以上ではWebpackが標準装備されているため、Webpackerやnode.jsがインストールされていないことが原因です。
そこで、このエラーが出た場合はWebpackerとnode.jsをインストールしましょう。
解決方法
それでは実際に解決していきましょう。
まずはnode.jsをインストールするためのコマンドを入力します。
$ brew install yarn
続いて、Webpackerをインストールします。
$ rails webpacker:install
これで解決です、一瞬で終わりましたね。
まとめ
- Webpackerとは、Webpackを使うためのgemパッケージ
- Rails6.0以降でアプリケーションを作成すると、Webpackが標準装備されている
- Webpackerに関するエラーが出た場合は、node.jsとWebpackerをインストールする
今回は、Webpackerに関するエラーが起こった時の対処方法について解説しました。見たことがないエラーが出ると混乱しがちですが、よくエラー文を読むことで解決できるので、焦らず対処していきましょう。