Reputation: 3640
i'm learning RoR, and I'm getting an error when generating a controller
mitchell@ubuntu:~/Ruby/Website/blog$ rails generate controller posts
/home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/execjs-1.4.0/lib/execjs/runtimes.rb:51:in `autodetect': Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/execjs-1.4.0/lib/execjs.rb:5:in `<module:ExecJS>'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/execjs-1.4.0/lib/execjs.rb:4:in `<top (required)>'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/coffee-script-2.2.0/lib/coffee_script.rb:1:in `require'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/coffee-script-2.2.0/lib/coffee_script.rb:1:in `<top (required)>'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/coffee-script-2.2.0/lib/coffee-script.rb:1:in `require'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/coffee-script-2.2.0/lib/coffee-script.rb:1:in `<top (required)>'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/coffee-rails-3.2.2/lib/coffee-rails.rb:1:in `require'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/coffee-rails-3.2.2/lib/coffee-rails.rb:1:in `<top (required)>'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.1/lib/bundler/runtime.rb:68:in `require'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.1/lib/bundler/runtime.rb:68:in `block (2 levels) in require'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.1/lib/bundler/runtime.rb:66:in `each'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.1/lib/bundler/runtime.rb:66:in `block in require'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.1/lib/bundler/runtime.rb:55:in `each'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.1/lib/bundler/runtime.rb:55:in `require'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.1/lib/bundler.rb:128:in `require'
from /home/mitchell/Ruby/Website/blog/config/application.rb:7:in `<top (required)>'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/commands.rb:24:in `require'
from /home/mitchell/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/commands.rb:24:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
I'm running Rails 3.2.9 and Ruby 1.9.3 on Ubuntu.
Upvotes: 0
Views: 1033
Reputation: 187252
You are missing a command line Javascript interpreter on your development machine.
Install node.js and you should be good.
And for the record, this message seems pretty clear:
Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)
Did you go to that URL and see what it says?
In general, error messages are very helpful things. When something doesn't work that message is supposed to tell you why, and sometimes even how to fix it.
Upvotes: 2