嘿伙计们我试图在Heroku上的rails 4应用程序上部署我的ruby但是执行有问题。我使用sqlite3,我已经尝试了一切。
这是最后一个阶段的错误:
遥控器:----->为Rails资产管道准备应用程序 remote:正在运行:rake assets:预编译 遥控器:耙子中止了! remote:ExecJS :: ProgramError:意外的令牌:运算符(<<)(第16行,第0行,第39行) 远程:错误 remote:at new JS_Parse_Error(/ tmp / execjs20150126-932-1636928js:2359:10623) remote:at js_error(/ tmp / execjs20150126-932-1636928js:2359:10842) remote:at croak(/ tmp / execjs20150126-932-1636928js:2359:19086) remote:at token_error(/ tmp / execjs20150126-932-1636928js:2359:19223) 远程:意外(/ tmp / execjs20150126-932-1636928js:2359:19311) remote:at expr_atom(/ tmp / execjs20150126-932-1636928js:2359:27526) remote:at maybe_unary(/ tmp / execjs20150126-932-1636928js:2359:30019) remote:at expr_ops(/ tmp / execjs20150126-932-1636928js:2359:30777) remote:at maybe_conditional(/ tmp / execjs20150126-932-1636928js:2359:30869) remote:at maybe_assign(/ tmp / execjs20150126-932-1636928js:2359:31312) remote :(在/tmp/build_c9b90b740808f1b53c01e698e6740e18/app/assets/javascripts/app.js.orig)/tmp/build_c9b90b740808f1b53c01e698e6740e18/vendor/bundle/ruby/2.0.0/gems/execjs-2.2.2/lib/execjs/external_runtime。 rb:64:在`extract_result'中 remote:/ tmp / build_c9b90b740808f1b53c01e698e6740e18 / vendor / bundle
我的application.js:
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require_tree .
//= require jquery-ui
的Gemfile:
group :development do
gem 'sqlite3'
end
group :production do
gem 'pg'
gem 'rails_12factor'
end
在我运行此命令时:
bundle exec rake --trace assets:precompile
我明白了:
** Invoke assets:precompile (first_time)
** Invoke assets:environment (first_time)
** Execute assets:environment
** Invoke environment (first_time)
** Execute environment
** Execute assets:precompile
但是在我得到一些不同的东西之前告诉我进入公共/资产/(一个非常长的屁股文件名).js紧挨着执行资产:precompile。当我进入文件时,它确实有一些“<<”。它是由我认为的基础产生的,但我不想碰任何东西。
答案 0 :(得分:2)
我也面临着这个问题。我发现多行注释也可能导致此问题。
<!-- -->
这是js中多行注释的错误语法,因此很麻烦。
这些应该替换为// comments
这解决了我的问题。
为了找到问题,我不得不首先在本地运行资产预编译任务,sprockets没有尝试压缩文件然后通过,然后我可以转到行号来查找是的评论造成所有麻烦。