LoginSignup
2
1

More than 3 years have passed since last update.

Could not find a JavaScript runtimeが出て、サーバーを起動できなくなった時の話(ターミナル)

Posted at

サーバーを起動できない!

ある朝、サーバーを起動してさあ作業に取り掛かろう!ということで$rails sをしてサーバーを起動しようとすると、以下のエラーが発生しサーバーを起動することができない。

Gem Load Error is: Could not find a JavaScript runtime. 
See https://github.com/rails/execjs for a list of available runtimes.

この時に解決するのがなかなか大変だったので、以後同じエラーが起きた時のための備忘録として書かせて頂きます。。

2つの解決法

どうやら調べてみるとエラー内容は文字通り、JavaScriptのruntimeがないよということらしい。

過去にも同様の問題に遭遇した人の記事がたくさんあり、調べてみると大まかに2つの解決法があるらしい。

Node.jsをインストールする

1つがこの方法。実際自分はこの方法で解決しました。
Node.jsをインストールするには以下の①②③のステップが必要らしい
①Homebrewをインストール
②nodebrewをインストール
③Node.jsをインストール

①Homebrewをインストール
ホームディレクトリで以下を実行

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Press RETURN to continue or any other key to abort
と出たらEnterキーを押す
Password:
と出たらパスワードを入力しEnterキーを押す(入力中のパスワードは表示されないがしっかりとは入力されている)

②nodebrewをインストール

brew install nodebrew

③Node.jsをインストール

$ brew install nodejs

最後にこれをインストールして、無事Node.jsのインストール完了

この後に再び$ rails sをするとサーバーが起動するように!!

Gemのtherubyracerを追加する

Node.jsのインストール以外に多くヒットしたもう1つがこの方法。

Gemfileに⬆️を追加して、コマンドで$bundle installするだけなので、こちらの方が簡単そうに見えるが、こちらはこちらでまたバージョン関係の別のエラーが発生してしまうことがあるらしい。(ここで発生するエラー内容については曖昧です)

最後に

今回自分がサーバーを起動できない時の対処法を自分なりに噛み砕いてメモさせて頂きました。

もし間違ってる箇所や他にも対処法が存在する場合は、ご指摘してくださると幸いです🙇‍♂️

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1