Ruby on rails UTF-16LE错误上的“\n”不完整

Ruby on rails UTF-16LE错误上的“\n”不完整,ruby-on-rails,angularjs,utf-16le,Ruby On Rails,Angularjs,Utf 16le,我一直在努力学习rails上的几个教程,每次在运行rails s时都会遇到以下问题: 教程:当ExecJS试图处理您的资产javascript和coffeescript并且您的文件编码不是UTF-16LE时,就会发生这种情况 最流行的修复方法:使用替代的ExecJS运行时 可能最流行的修复方法是使用NodeJS作为ExecJS运行时。一种方法是: 安装nodejs 将环境变量EXECJS_运行时设置为Node 启动Rails服务器 替代修复:修改现有配置 进行另一个安装NodeJS的替代方法是修

我一直在努力学习rails上的几个教程,每次在运行rails s时都会遇到以下问题:


教程:

当ExecJS试图处理您的资产javascript和coffeescript并且您的文件编码不是UTF-16LE时,就会发生这种情况

最流行的修复方法:使用替代的ExecJS运行时 可能最流行的修复方法是使用NodeJS作为ExecJS运行时。一种方法是:

安装nodejs 将环境变量EXECJS_运行时设置为Node 启动Rails服务器 替代修复:修改现有配置 进行另一个安装NodeJS的替代方法是修改默认ExecJS运行时的配置。我相信您的系统正在使用cscript

请查看execjs runtimes.rb文件。它在您的gems目录中。您可以在github上看到此文件的最新版本。它包含以下内容:

JScript = ExternalRuntime.new(
  name:        "JScript",
  command:     "cscript //E:jscript //Nologo //U",
  runner_path: ExecJS.root + "/support/jscript_runner.js",
  encoding:    'UTF-16LE' # CScript with //U returns UTF-16LE
)
我不能建议您采取最好的方法,但为了快速修复,您可能需要编辑此文件,然后重新启动服务器

您可能会发现,删除//U可以解决问题。 您可能会发现,将UTF-16LE更改为UTF-8可以解决此问题。 您可能会发现这两个步骤的结合解决了问题。 这些说明摘自

JScript = ExternalRuntime.new(
  name:        "JScript",
  command:     "cscript //E:jscript //Nologo //U",
  runner_path: ExecJS.root + "/support/jscript_runner.js",
  encoding:    'UTF-16LE' # CScript with //U returns UTF-16LE
)