Ruby Racer,RuntimeError - SyntaxError:意外缩进

时间:2017-03-27 08:26:14

标签: ruby-on-rails ruby-on-rails-4 therubyracer

在旧应用程序上执行ruby和rails升级后,尝试访问任何应用程序视图时出现以下错误:

SyntaxError: [stdin]:3:1: unexpected indentation

似乎与Ruby Racer gem相关的某些文件可能会导致此问题。

Ruby 2.3.1p112,Rails 4.0.13,therubyracer 0.12.3

在服务器日志中:

ExecJS::RuntimeError - SyntaxError: [stdin]:3:1: unexpected indentation:
  execjs (2.7.0) lib/execjs/ruby_racer_runtime.rb:98:in `wrap_error'
  execjs (2.7.0) lib/execjs/ruby_racer_runtime.rb:47:in `rescue in block in call'
  execjs (2.7.0) lib/execjs/ruby_racer_runtime.rb:44:in `block in call'
  execjs (2.7.0) lib/execjs/ruby_racer_runtime.rb:75:in `block in lock'
  execjs (2.7.0) lib/execjs/ruby_racer_runtime.rb:73:in `lock'
  execjs (2.7.0) lib/execjs/ruby_racer_runtime.rb:43:in `call'
  coffee-script (2.4.1) lib/coffee_script.rb:78:in `compile'

更新

使用gem 'therubyracer', '~> 0.10.2'等先前版本的therubyracer无法解决问题。

1 个答案:

答案 0 :(得分:3)

编译一个咖啡脚本时出现编译错误。您应该检查coffee文件夹中的assets/javascript个文件。

为了帮助您更轻松地调试问题(哪一行),您可以尝试手动安装coffee脚本(http://coffeescript.org)并使用命令行编译器。