Как отладить синтаксические ошибки подсказки ресурсов?

Я пытаюсь нажать на Heroku после некоторого касания внешнего интерфейса, но у меня есть несколько ошибок при прекомпиляции (я думаю, синтаксические ошибки).

Дело в том, что я получаю номер строки предварительно скомпилированных ресурсов, а не исходных, так что я не знаю, как их отладить!

  ExecJS::ProgramError: Unexpected token: operator (<) (line: 20575, col: 0, pos: 641944)
       Error
       at new JS_Parse_Error (/tmp/execjs20141029-3052-g386xfjs:2357:10623)
       at js_error (/tmp/execjs20141029-3052-g386xfjs:2357:10842)
       at croak (/tmp/execjs20141029-3052-g386xfjs:2357:19067)
       at token_error (/tmp/execjs20141029-3052-g386xfjs:2357:19204)
       at unexpected (/tmp/execjs20141029-3052-g386xfjs:2357:19292)
       at /tmp/execjs20141029-3052-g386xfjs:2357:27484
       at /tmp/execjs20141029-3052-g386xfjs:2357:29977
       at expr_ops (/tmp/execjs20141029-3052-g386xfjs:2357:30735)
       at /tmp/execjs20141029-3052-g386xfjs:2357:30827
       at /tmp/execjs20141029-3052-g386xfjs:2357:31270

2 ответа

Решение

Обычно в этой ситуации вы все еще можете скомпилировать свои ресурсы локально, а затем перейти к соответствующей строке в скомпилированном файле application.js.

Так

bundle exec rake assets:precompile

(вам нужно иметь локальную производственную базу данных для запуска bundle exec rake db:create:all)

затем откройте public/assets/application-some_md5_hash.js в вашем редакторе

В вашем случае вы бы пошли на линию 20575 и искать сумасшедшего < где-то

Убедитесь, что вы очистите и удалите public/assets папку, чтобы вы не случайно проверить его в системе контроля версий

Я уверен, что это также будет работать в ситуации, когда у вас есть фанк CSS, перейдя в application-md5stuff.css

Я не уверен, поможет ли это вам, но в моем Gemfile у меня была установлена ​​неправильная версия ruby

  bundle exec rake assets:precompile

он сказал мне, какая у меня версия, обновление работало на меня.

Другие вопросы по тегам