3
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

rails server実行時にJavaScript runtimeエラー

Posted at

いつものようにrails serverを実行したとき、JavaScriptエラーに遭遇してしまったときの解決法

JavaScript runtime

エラーメッセージは以下

terminal
$rails server
︙
/home/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/execjs-2.7.0/lib/execjs/runtimes.rb:58:in `autodetect'
: Could not find a JavaScript runtime. 
See https://github.com/rails/execjs for a list of available runtimes. 
(ExecJS::RuntimeUnavailable)

ログを見ると丁寧にGithubのページリンクが載っている。
読み解くと、どうやらGemfileにtherubyracerというgemを追加してあげればよさそうだ。

gemfile
︙
gem 'therubyracer'

でbundle update後、再度実行

terminal
$ bundle update
$ rails server
︙
/home/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/activesupport-4.2.6/lib/active_support/core_ext/numeric/conversions.rb:131:in 
`block (2 levels) in <class:Numeric>': stack level too deep (SystemStackError)

今度は別のエラーとなってしまった

stack level too deep

解決方法は[こちら](https://stackoverflow.com/questions/41504106/ruby-2-4-and-rails-4-stack-level-too-deep-systemstackerror)に載っていた。 今回はrailsのversionを4.2.6で実行していたが、4.2.8に変更することで解決しそうだ。

ということでGemfileを編集する。

Gemfile
︙
gem 'rails', '4.2.8' → '4.2.6'に修正

再びbundle updateをして実行

これで解決できた。

3
5
0

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
3
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?