【问题标题】:Syntax error when deploying Rails app to Heroku: ExecJS::RuntimeError: SyntaxError: Unexpected character将 Rails 应用程序部署到 Heroku 时出现语法错误:ExecJS::RuntimeError: SyntaxError: Unexpected character
【发布时间】:2017-06-12 11:51:24
【问题描述】:

我正在尝试将我的应用程序部署到 Heroku,但它向我抛出了这个错误。

"ExecJS::RuntimeError: SyntaxError: Unexpected character '`' (line: 14577,列:33,位置:440811"

我认为coffeescript/javascript 有问题。我已经删除了所有的咖啡脚本文件,但我不知道自己做错了什么。

按照 Iceman 的建议,我尝试运行该命令

rake assets:预编译 RAILS_ENV=development

它说

我,[2017-01-26T16:32:25.173928 #2674] INFO -- : Writing >/Users/Gana/Documents/bombay/bombaydarbar/public/assets/circle->cb2239e32deac2eba5c693c3574b562595f1f933a88968866e47c170 我,[2017-01-26T16:32:25.209986 #2674] INFO -- : 写作 >/Users/Gana/Documents/bombay/bombaydarbar/public/assets/fb->e361b3ecca9c24c6c05646b170fe25fcc185fa2eafb7aa46780253c8a9c790a 我,[2017-01-26T16:32:25.225079 #2674] INFO -- : Writing >/Users/Gana/Documents/bombay/bombaydarbar/public/assets/los->f083228761f6ede67e04a1a73906b4585bc5cfd3154ffec48261c4f04cf95aa3.jpg 我,[2017-01-26T16:32:25.253212 #2674] INFO -- : Writing >/Users/Gana/Documents/bombay/bombaydarbar/public/assets/main->221235002689ad3847a67a05ce3608ebed4ee709be6fcf61bc0ccef2001b487f.jpg 我,[2017-01-26T16:32:25.272155 #2674] INFO -- : Writing /Users/Gana/Documents/bombay/bombaydarbar/public/assets/us-background-638489d758e08327ad62f883f11397bc870df84038b502ea147c3e2510cac 我,[2017-01-26T16:32:25.313969 #2674] INFO -- : Writing /Users/Gana/Documents/bombay/bombaydarbar/public/assets/zaisan-5f83c22eef3372c96199aad34ab9ad1744d6124e845a01267fcabcec39e2e948.jpg 我,[2017-01-26T16:32:25.426829 #2674] INFO -- : Writing /Users/Gana/Documents/bombay/bombaydarbar/public/assets/application-cadb51eb7487d2788eae31912fc18cc28ffaf8d48ea022d2a8a49c121415d7f8.js 我,[2017-01-26T16:32:25.427380 #2674] INFO -- : Writing /Users/Gana/Documents/bombay/bombaydarbar/public/assets/application-cadb51eb7487d2788eae31912fc18cc28ffaf8d48ea022d2a8a49c121415d7f8.js。 我,[2017-01-26T16:32:25.540537 #2674] INFO -- : Writing /Users/Gana/Documents/bombay/bombaydarbar/public/assets/application-8b6461ded0e51f6232fa5606fc47c47cd9b64684fbbeccd9fed16d7a0a66deee.css 我,[2017-01-26T16:32:25.540807 #2674] INFO -- : Writing /Users/Gana/Documents/bombay/bombaydarbar/public/assets/application-8b6461ded0e51f6232fa5606fc47c47cd9b64684fbbeccd9fed16d7a0a66deee.css。 我,[2017-01-26T16:32:25.543684 #2674] 信息 -- : 写作 /Users/Gana/Documents/bombay/bombaydarbar/public/assets/fontawesome-webfont-7bfcab6db99d5cfbf1705ca0536ddc78585432cc5fa41bbd7ad0f009033b27 我,[2017-01-26T16:32:25.597933 #2674] 信息 -- : 写作 /Users/Gana/Documents/bombay/bombaydarbar/public/assets/fontawesome-webfont-7bfcab6db99d5cfbf1705ca0536ddc78585432cc5fa41bbd7ad0f009033b27g. 我,[2017-01-26T16:32:25.601098 #2674] 信息 -- : 写作 /Users/Gana/Documents/bombay/bombaydarbar/public/assets/fontawesome-webfont-2adefcbc041e7d18fcf2d417879dc5a09997aa64d675b7a3c4b6ce33daoff13 我,[2017-01-26T16:32:25.638449 #2674] 信息——:写作 /Users/Gana/Documents/bombay/bombaydarbar/public/assets/fontawesome-webfont-ba0c59deb5450f5cb41b3f93609ee2d0d995415877ddfa227408a8a753 我,[2017-01-26T16:32:25.675384 #2674] 信息 -- : 写作 /Users/Gana/Documents/bombay/bombaydarbar/public/assets/fontawesome-webfont-aa58f33f239a0fb02f5c7a6c45c043d7a9ac9a0933335806694ecdfd6d6d 我,[2017-01-26T16:32:25.716776 #2674] INFO -- : 写作 /Users/Gana/Documents/bombay/bombaydarbar/public/assets/fontawesome-webfont-aa58f33f239a0fb02f5c7a6c45c043d7a9ac9a0933335806694ecdf.g46d 我,[2017-01-26T16:32:25.721169 #2674] 信息 -- : 写作 /Users/Gana/Documents/bombay/bombaydarbar/public/assets/fontawesome-webfont-ad6157926c1622ba4e1d03d478f1541368524bfc46f51e42fe0d945e 我,[2017-01-26T16:32:25.808396 #2674] INFO -- : Writing /Users/Gana/Documents/bombay/bombaydarbar/public/assets/fontawesome-webfont-ad6157926c1622ba4e1d03d478f1541368524bfc46f51e42fe0d945eg>

我的图片文件有问题吗?

【问题讨论】:

  • 没有看到任何代码恐怕很难提供帮助。
  • 我不知道要显示哪个部分,在我尝试部署之前,我的本地服务器上的一切似乎都运行良好
  • 您可以尝试在本地服务器上执行rake assets:precompile RAILS_ENV=development,它可能会提供更好的线索。
  • 谢谢,我已经尝试过执行我无法理解的命令,我已经编辑了帖子,您可以再看一下吗
  • 您发布的sn-p中没有错误,您在预编译时一定遇到了一些错误。

标签: javascript ruby-on-rails heroku coffeescript


【解决方案1】:

正如一些用户所提到的,问题是 Rails JS uglifier 无法处理 ES6 模板文字。

Uglifier 现在具有支持 ES6 / ES2015+ 语法的 Harmony 模式。

您可以通过将:harmony => true 选项传递给 Uglifier 来启用它。

打开config/environments/production.rb

替换

config.assets.js_compressor = :uglifier

config.assets.js_compressor = Uglifier.new(harmony: true)

【讨论】:

    【解决方案2】:

    我遇到了类似的错误,Rails JS uglifier 似乎无法处理ES6 template literals。您可能需要用单引号或双引号替换“`”(模板文字)。 如果您想验证,请将有问题的 JS(您必须在 JS 目录中搜索“`”)文件复制粘贴到此处 https://jscompress.com/ 并查看错误。

    【讨论】:

      猜你喜欢
      • 2017-01-06
      • 1970-01-01
      • 1970-01-01
      • 2012-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多