繁体   English   中英

rails服务器无法启动

[英]rails server doesn't start

我成功地安装了ruby和rails。 我使用ruby 2.1.0和rails 4.1.0我的操作系统是ubuntu 12.04

创建一个新的rails应用程序并设置我尝试启动rails服务器的当前目录( ~/my_app$ rails server )后,它会出现以下错误:

*/home/miguel/.rvm/gems/ruby-2.1.0/gems/execjs-2.0.2/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/miguel/.rvm/gems/ruby-2.1.0/gems/execjs-2.0.2/lib/execjs.rb:5:in `<module:ExecJS>'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/execjs-2.0.2/lib/execjs.rb:4:in `<top (required)>'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/uglifier-2.5.0/lib/uglifier.rb:3:in `require'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/uglifier-2.5.0/lib/uglifier.rb:3:in `<top (required)>'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/bundler-1.5.1/lib/bundler/runtime.rb:76:in `require'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/bundler-1.5.1/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/bundler-1.5.1/lib/bundler/runtime.rb:72:in `each'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/bundler-1.5.1/lib/bundler/runtime.rb:72:in `block in require'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/bundler-1.5.1/lib/bundler/runtime.rb:61:in `each'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/bundler-1.5.1/lib/bundler/runtime.rb:61:in `require'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/bundler-1.5.1/lib/bundler.rb:131:in `require'
    from /home/miguel/my_app/config/application.rb:7:in `<top (required)>'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/railties-4.1.0/lib/rails/commands/commands_tasks.rb:79:in `require'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/railties-4.1.0/lib/rails/commands/commands_tasks.rb:79:in `block in server'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/railties-4.1.0/lib/rails/commands/commands_tasks.rb:76:in `tap'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/railties-4.1.0/lib/rails/commands/commands_tasks.rb:76:in `server'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/railties-4.1.0/lib/rails/commands/commands_tasks.rb:40:in `run_command!'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/railties-4.1.0/lib/rails/commands.rb:17:in `<top (required)>'
    from /home/miguel/my_app/bin/rails:8:in `require'
    from /home/miguel/my_app/bin/rails:8:in `<top (required)>'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/spring-1.1.2/lib/spring/client/rails.rb:27:in `load'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/spring-1.1.2/lib/spring/client/rails.rb:27:in `call'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/spring-1.1.2/lib/spring/client/command.rb:7:in `call'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/spring-1.1.2/lib/spring/client.rb:26:in `run'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/spring-1.1.2/bin/spring:48:in `<top (required)>'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/spring-1.1.2/lib/spring/binstub.rb:11:in `load'
    from /home/miguel/.rvm/gems/ruby-2.1.0/gems/spring-1.1.2/lib/spring/binstub.rb:11:in `<top (required)>'
    from /home/miguel/my_app/bin/spring:16:in `require'
    from /home/miguel/my_app/bin/spring:16:in `<top (required)>'
    from bin/rails:3:in `load'
    from bin/rails:3:in `<main>'*

并且服务器不运行。

有什么事?

谢谢

您需要安装JS运行时

你有几个选择

  1. sudo apt-get install nodejs

  2. 添加到您的gemfile gem 'therubyracer'

therubyracer

Rail的资产管道使用javascript运行时将coffeescript转换为javascript(以及其他一些错误的任务)。

对于小型/演示项目,或者对于不想使用coffeescript的项目,可以通过添加关闭资产管道

config.assets.enabled = false

到你的config/application.rb

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM