问题
Hello I am getting a ExecJS::RuntimeError in Demo#index
Below is the line 6 that was highlighted and below that is my full trace. Can someone either A: point me in the right direction to debug this as well as a good reference for debugging rails. I am new to rails. My guess is i'm missing a gem (i checked to make sure turbolinks was there) or something in turbolinks is wrong. I'm using Rails 4 using rails installer (after updating gems and rails and bundle install etc.).
Below is also my gemfile
Line 6 is highlighted:
<%= javascript_include_tag "application", "data-turbolinks-track" => true %>
Below is my full trace:
execjs (1.4.0) lib/execjs/external_runtime.rb:142:in `exec_runtime'
execjs (1.4.0) lib/execjs/external_runtime.rb:28:in `block in exec'
execjs (1.4.0) lib/execjs/external_runtime.rb:41:in `compile_to_tempfile'
execjs (1.4.0) lib/execjs/external_runtime.rb:27:in `exec'
execjs (1.4.0) lib/execjs/external_runtime.rb:19:in `eval'
execjs (1.4.0) lib/execjs/external_runtime.rb:33:in `call'
coffee-script (2.2.0) lib/coffee_script.rb:57:in `compile'
tilt (1.4.1) lib/tilt/coffee.rb:46:in `evaluate'
tilt (1.4.1) lib/tilt/template.rb:103:in `render'
sprockets (2.10.0) lib/sprockets/context.rb:197:in `block in evaluate'
sprockets (2.10.0) lib/sprockets/context.rb:194:in `each'
sprockets (2.10.0) lib/sprockets/context.rb:194:in `evaluate'
sprockets (2.10.0) lib/sprockets/processed_asset.rb:12:in `initialize'
sprockets (2.10.0) lib/sprockets/base.rb:374:in `new'
sprockets (2.10.0) lib/sprockets/base.rb:374:in `block in build_asset'
sprockets (2.10.0) lib/sprockets/base.rb:395:in `circular_call_protection'
sprockets (2.10.0) lib/sprockets/base.rb:373:in `build_asset'
sprockets (2.10.0) lib/sprockets/index.rb:94:in `block in build_asset'
sprockets (2.10.0) lib/sprockets/caching.rb:58:in `cache_asset'
sprockets (2.10.0) lib/sprockets/index.rb:93:in `build_asset'
sprockets (2.10.0) lib/sprockets/base.rb:287:in `find_asset'
sprockets (2.10.0) lib/sprockets/index.rb:61:in `find_asset'
sprockets (2.10.0) lib/sprockets/processed_asset.rb:111:in `block in resolve_dependencies'
sprockets (2.10.0) lib/sprockets/processed_asset.rb:105:in `each'
sprockets (2.10.0) lib/sprockets/processed_asset.rb:105:in `resolve_dependencies'
sprockets (2.10.0) lib/sprockets/processed_asset.rb:97:in `build_required_assets'
sprockets (2.10.0) lib/sprockets/processed_asset.rb:16:in `initialize'
sprockets (2.10.0) lib/sprockets/base.rb:374:in `new'
sprockets (2.10.0) lib/sprockets/base.rb:374:in `block in build_asset'
sprockets (2.10.0) lib/sprockets/base.rb:395:in `circular_call_protection'
sprockets (2.10.0) lib/sprockets/base.rb:373:in `build_asset'
sprockets (2.10.0) lib/sprockets/index.rb:94:in `block in build_asset'
sprockets (2.10.0) lib/sprockets/caching.rb:58:in `cache_asset'
sprockets (2.10.0) lib/sprockets/index.rb:93:in `build_asset'
sprockets (2.10.0) lib/sprockets/base.rb:287:in `find_asset'
sprockets (2.10.0) lib/sprockets/index.rb:61:in `find_asset'
sprockets (2.10.0) lib/sprockets/bundled_asset.rb:16:in `initialize'
sprockets (2.10.0) lib/sprockets/base.rb:377:in `new'
sprockets (2.10.0) lib/sprockets/base.rb:377:in `build_asset'
sprockets (2.10.0) lib/sprockets/index.rb:94:in `block in build_asset'
sprockets (2.10.0) lib/sprockets/caching.rb:58:in `cache_asset'
sprockets (2.10.0) lib/sprockets/index.rb:93:in `build_asset'
sprockets (2.10.0) lib/sprockets/base.rb:287:in `find_asset'
sprockets (2.10.0) lib/sprockets/index.rb:61:in `find_asset'
sprockets (2.10.0) lib/sprockets/environment.rb:75:in `find_asset'
sprockets (2.10.0) lib/sprockets/base.rb:295:in `[]'
sprockets-rails (2.0.0) lib/sprockets/rails/helper.rb:141:in `lookup_asset_for_path'
sprockets-rails (2.0.0) lib/sprockets/rails/helper.rb:90:in `block in javascript_include_tag'
sprockets-rails (2.0.0) lib/sprockets/rails/helper.rb:89:in `map'
sprockets-rails (2.0.0) lib/sprockets/rails/helper.rb:89:in `javascript_include_tag'
app/views/layouts/application.html.erb:6:in `_app_views_layouts_application_html_erb__93722521_39251544'
actionpack (4.0.0.rc1) lib/action_view/template.rb:143:in `block in render'
activesupport (4.0.0.rc1) lib/active_support/notifications.rb:161:in `instrument'
actionpack (4.0.0.rc1) lib/action_view/template.rb:141:in `render'
actionpack (4.0.0.rc1) lib/action_view/renderer/template_renderer.rb:61:in `render_with_layout'
actionpack (4.0.0.rc1) lib/action_view/renderer/template_renderer.rb:47:in `render_template'
actionpack (4.0.0.rc1) lib/action_view/renderer/template_renderer.rb:17:in `render'
actionpack (4.0.0.rc1) lib/action_view/renderer/renderer.rb:42:in `render_template'
actionpack (4.0.0.rc1) lib/action_view/renderer/renderer.rb:23:in `render'
actionpack (4.0.0.rc1) lib/abstract_controller/rendering.rb:127:in `_render_template'
actionpack (4.0.0.rc1) lib/action_controller/metal/streaming.rb:219:in `_render_template'
actionpack (4.0.0.rc1) lib/abstract_controller/rendering.rb:120:in `render_to_body'
actionpack (4.0.0.rc1) lib/action_controller/metal/rendering.rb:33:in `render_to_body'
actionpack (4.0.0.rc1) lib/action_controller/metal/renderers.rb:26:in `render_to_body'
actionpack (4.0.0.rc1) lib/abstract_controller/rendering.rb:97:in `render'
actionpack (4.0.0.rc1) lib/action_controller/metal/rendering.rb:16:in `render'
actionpack (4.0.0.rc1) lib/action_controller/metal/instrumentation.rb:41:in `block (2 levels) in render'
activesupport (4.0.0.rc1) lib/active_support/core_ext/benchmark.rb:12:in `block in ms'
C:/RailsInstaller/Ruby1.9.3/lib/ruby/1.9.1/benchmark.rb:295:in `realtime'
activesupport (4.0.0.rc1) lib/active_support/core_ext/benchmark.rb:12:in `ms'
actionpack (4.0.0.rc1) lib/action_controller/metal/instrumentation.rb:41:in `block in render'
actionpack (4.0.0.rc1) lib/action_controller/metal/instrumentation.rb:84:in `cleanup_view_runtime'
activerecord (4.0.0.rc1) lib/active_record/railties/controller_runtime.rb:25:in `cleanup_view_runtime'
actionpack (4.0.0.rc1) lib/action_controller/metal/instrumentation.rb:40:in `render'
actionpack (4.0.0.rc1) lib/action_controller/metal/implicit_render.rb:10:in `default_render'
actionpack (4.0.0.rc1) lib/action_controller/metal/implicit_render.rb:5:in `send_action'
actionpack (4.0.0.rc1) lib/abstract_controller/base.rb:189:in `process_action'
actionpack (4.0.0.rc1) lib/action_controller/metal/rendering.rb:10:in `process_action'
actionpack (4.0.0.rc1) lib/abstract_controller/callbacks.rb:18:in `block in process_action'
activesupport (4.0.0.rc1) lib/active_support/callbacks.rb:422:in `_run__842584183__process_action__callbacks'
activesupport (4.0.0.rc1) lib/active_support/callbacks.rb:80:in `run_callbacks'
actionpack (4.0.0.rc1) lib/abstract_controller/callbacks.rb:17:in `process_action'
actionpack (4.0.0.rc1) lib/action_controller/metal/rescue.rb:29:in `process_action'
actionpack (4.0.0.rc1) lib/action_controller/metal/instrumentation.rb:31:in `block in process_action'
activesupport (4.0.0.rc1) lib/active_support/notifications.rb:159:in `block in instrument'
activesupport (4.0.0.rc1) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
activesupport (4.0.0.rc1) lib/active_support/notifications.rb:159:in `instrument'
actionpack (4.0.0.rc1) lib/action_controller/metal/instrumentation.rb:30:in `process_action'
actionpack (4.0.0.rc1) lib/action_controller/metal/params_wrapper.rb:245:in `process_action'
activerecord (4.0.0.rc1) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
actionpack (4.0.0.rc1) lib/abstract_controller/base.rb:136:in `process'
actionpack (4.0.0.rc1) lib/abstract_controller/rendering.rb:44:in `process'
actionpack (4.0.0.rc1) lib/action_controller/metal.rb:195:in `dispatch'
actionpack (4.0.0.rc1) lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
actionpack (4.0.0.rc1) lib/action_controller/metal.rb:231:in `block in action'
actionpack (4.0.0.rc1) lib/action_dispatch/routing/route_set.rb:80:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/routing/route_set.rb:80:in `dispatch'
actionpack (4.0.0.rc1) lib/action_dispatch/routing/route_set.rb:48:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/journey/router.rb:71:in `block in call'
actionpack (4.0.0.rc1) lib/action_dispatch/journey/router.rb:59:in `each'
actionpack (4.0.0.rc1) lib/action_dispatch/journey/router.rb:59:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/routing/route_set.rb:654:in `call'
rack (1.5.2) lib/rack/etag.rb:23:in `call'
rack (1.5.2) lib/rack/conditionalget.rb:25:in `call'
rack (1.5.2) lib/rack/head.rb:11:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/params_parser.rb:27:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/flash.rb:241:in `call'
rack (1.5.2) lib/rack/session/abstract/id.rb:225:in `context'
rack (1.5.2) lib/rack/session/abstract/id.rb:220:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/cookies.rb:486:in `call'
activerecord (4.0.0.rc1) lib/active_record/query_cache.rb:36:in `call'
activerecord (4.0.0.rc1) lib/active_record/connection_adapters/abstract/connection_pool.rb:626:in `call'
activerecord (4.0.0.rc1) lib/active_record/migration.rb:366:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (4.0.0.rc1) lib/active_support/callbacks.rb:392:in `_run__736096468__call__callbacks'
activesupport (4.0.0.rc1) lib/active_support/callbacks.rb:80:in `run_callbacks'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/reloader.rb:64:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/remote_ip.rb:76:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
railties (4.0.0.rc1) lib/rails/rack/logger.rb:38:in `call_app'
railties (4.0.0.rc1) lib/rails/rack/logger.rb:21:in `block in call'
activesupport (4.0.0.rc1) lib/active_support/tagged_logging.rb:67:in `block in tagged'
activesupport (4.0.0.rc1) lib/active_support/tagged_logging.rb:25:in `tagged'
activesupport (4.0.0.rc1) lib/active_support/tagged_logging.rb:67:in `tagged'
railties (4.0.0.rc1) lib/rails/rack/logger.rb:21:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/request_id.rb:21:in `call'
rack (1.5.2) lib/rack/methodoverride.rb:21:in `call'
rack (1.5.2) lib/rack/runtime.rb:17:in `call'
activesupport (4.0.0.rc1) lib/active_support/cache/strategy/local_cache.rb:83:in `call'
rack (1.5.2) lib/rack/lock.rb:17:in `call'
actionpack (4.0.0.rc1) lib/action_dispatch/middleware/static.rb:64:in `call'
railties (4.0.0.rc1) lib/rails/engine.rb:511:in `call'
railties (4.0.0.rc1) lib/rails/application.rb:96:in `call'
rack (1.5.2) lib/rack/lock.rb:17:in `call'
rack (1.5.2) lib/rack/content_length.rb:14:in `call'
rack (1.5.2) lib/rack/handler/webrick.rb:60:in `service'
C:/RailsInstaller/Ruby1.9.3/lib/ruby/1.9.1/webrick/httpserver.rb:138:in `service'
C:/RailsInstaller/Ruby1.9.3/lib/ruby/1.9.1/webrick/httpserver.rb:94:in `run'
C:/RailsInstaller/Ruby1.9.3/lib/ruby/1.9.1/webrick/server.rb:191:in `block in start_thread'
GEMFILE Below for this project
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.0.0.rc1'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.0.rc1'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
gem 'therubyracer', platforms: :ruby
# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 1.0.1'
group :doc do
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', require: false
end
# Use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'
# Use unicorn as the app server
# gem 'unicorn'
# Use Capistrano for deployment
# gem 'capistrano', group: :development
# Use debugger
# gem 'debugger', group: [:development, :test]
回答1:
I got the same error and fix it :)
- Open the Gemfile
- Add these lines: gem 'execjs' gem 'therubyracer'
- Save the changes in the file
- Execute bundle install on the terminal
回答2:
I had this issue before and solved it by installing node.js (using the MSI installer).
Hope this helps.
回答3:
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
gem 'therubyracer', platforms: :ruby*
remove the gem from Gemfile
therubyracer is a embed the V8 Javascript Interpreter into Ruby
or
you need install Node.js
回答4:
Don't know if the problem in the question is exactly the same as mine (got the same trace though). Anyway, here is one solution for execjs runtime error on Windows:
solution by Rodrigo Argumedo
回答5:
This worked for me. This problem occurs mainly in Windows OS. Force your Coffee Script Source version to 1.8.0. Higher versions are not supported properly.
Change or add this to your gem file:
gem 'coffee-script-source', '1.8.0'
then update the coffee-script-source bundle
bundle update coffee-script-source
This should fix the issue.
回答6:
I had the same error using Rails 5.2 and ruby 2.5. In my case the problem was with the gem Bootstrap 4. I was using gem 'bootstrap', '~> 4.1', '>= 4.1.3'
I disabled this gem and the Rails started working. For solver the problem, I change the gem 'bootstrap'
to gem 'bootstrap-sass', '~> 3.3', '>= 3.3.7'
来源:https://stackoverflow.com/questions/17051358/rails-execjs-runtime-error