【问题标题】:Rails deploying to DigitalOcean with cap/passenger/ubuntu Failing at assets:precompile使用 cap/passenger/ubuntu 部署到 DigitalOcean 的 Rails 资产失败:预编译
【发布时间】:2016-01-20 12:45:49
【问题描述】:

因此,在使用乘客和 ubuntu 将我的 Rails 应用程序部署到 DigitalOcean 时,我收到以下调试错误:

DEBUG [1252b854]    rake aborted!
DEBUG [1252b854]    ExecJS::ProgramError: Unexpected token string «HydraCAD-R», expected punc «,» (line: 18866, col: 14, pos: 966080)

Error
    at new JS_Parse_Error (/tmp/execjs20160119-19094-sekf6gjs:2659:11936)
    at js_error (/tmp/execjs20160119-19094-sekf6gjs:2659:12155)
    at croak (/tmp/execjs20160119-19094-sekf6gjs:2659:20622)
    at token_error (/tmp/execjs20160119-19094-sekf6gjs:2659:20759)
    at expect_token (/tmp/execjs20160119-19094-sekf6gjs:2659:20982)
    at expect (/tmp/execjs20160119-19094-sekf6gjs:2659:21120)
    at /tmp/execjs20160119-19094-sekf6gjs:2659:29716
    at /tmp/execjs20160119-19094-sekf6gjs:2659:21493
    at expr_atom (/tmp/execjs20160119-19094-sekf6gjs:2659:28884)
    at maybe_unary (/tmp/execjs20160119-19094-sekf6gjs:2659:31652)
    at expr_ops (/tmp/execjs20160119-19094-sekf6gjs:2660:404)
    at maybe_conditional (/tmp/execjs20160119-19094-sekf6gjs:2660:496)
    at maybe_assign (/tmp/execjs20160119-19094-sekf6gjs:2660:939)
    at expression (/tmp/execjs20160119-19094-sekf6gjs:2660:1252)
    at /tmp/execjs20160119-19094-sekf6gjs:2659:30214
DEBUG [1252b854]    new JS_Parse_Error ((execjs):2659:11936)
js_error ((execjs):2659:12155)
croak ((execjs):2659:20622)
token_error ((execjs):2659:20759)
expect_token ((execjs):2659:20982)
expect ((execjs):2659:21120)
(execjs):2659:29716
(execjs):2659:21493
expr_atom ((execjs):2659:28884)
maybe_unary ((execjs):2659:31652)
expr_ops ((execjs):2660:404)
maybe_conditional ((execjs):2660:496)
maybe_assign ((execjs):2660:939)
expression ((execjs):2660:1252)
(execjs):2659:30214
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/execjs-2.6.0/lib/execjs/external_runtime.rb:39:in `exec'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/execjs-2.6.0/lib/execjs/external_runtime.rb:21:in `eval'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/execjs-2.6.0/lib/execjs/external_runtime.rb:46:in `call'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/uglifier-2.7.2/lib/uglifier.rb:212:in `run_uglifyjs'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/uglifier-2.7.2/lib/uglifier.rb:179:in `compile'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/uglifier_compressor.rb:52:in `call'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/uglifier_compressor.rb:28:in `call'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/processor_utils.rb:75:in `call_processor'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/processor_utils.rb:57:in `block in call_processors'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/processor_utils.rb:56:in `reverse_each'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/processor_utils.rb:56:in `call_processors'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/loader.rb:134:in `load_from_unloaded'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/loader.rb:60:in `block in load'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/loader.rb:318:in `fetch_asset_from_dependency_cache'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/loader.rb:44:in `load'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/cached_environment.rb:20:in `block in initialize'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/cached_environment.rb:47:in `yield'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/cached_environment.rb:47:in `load'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/base.rb:66:in `find_asset'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/base.rb:73:in `find_all_linked_assets'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/manifest.rb:142:in `block in find'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/legacy.rb:114:in `block (2 levels) in logical_paths'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/path_utils.rb:225:in `block in stat_tree'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/path_utils.rb:209:in `block in stat_directory'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/path_utils.rb:206:in `each'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/path_utils.rb:206:in `stat_directory'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/path_utils.rb:224:in `stat_tree'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/legacy.rb:105:in `each'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/legacy.rb:105:in `block in logical_paths'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/legacy.rb:104:in `each'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/legacy.rb:104:in `logical_paths'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/manifest.rb:140:in `find'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/sprockets/manifest.rb:168:in `compile'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-rails-3.0.0/lib/sprockets/rails/task.rb:68:in `block (3 levels) in define'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-3.5.2/lib/rake/sprocketstask.rb:147:in `with_logger'
/home/deploy/deployApp/shared/bundle/ruby/2.2.0/gems/sprockets-rails-3.0.0/lib/sprockets/rails/task.rb:67:in `block (2 levels) in define'
DEBUG [1252b854]    Tasks: TOP => assets:precompile
DEBUG [1252b854]    (See full trace by running task with --trace)

我正在使用 ruby​​ -v
ruby 2.2.3p173 (2015-08-18 修订版 51636) [x86_64-darwin14]

所有代码都已推送到 git。

我尝试使用 rake assets:precompile 进行预编译,然后运行 ​​git add .,提交并将其推送到 git。

在本地运行我得到:

bundle exec passenger start
=============== Phusion Passenger Standalone web server started ===============
PID file: /Users/user/desktop/railsApps/railsApp/tmp/pids/passenger.3000.pid
Log file: /Users/user/desktop/railsApps/railsApp/log/passenger.3000.log
Environment: development
Accessible via: http://0.0.0.0:3000/

You can stop Phusion Passenger Standalone by pressing Ctrl-C.
Problems? Check https://www.phusionpassenger.com/library/admin/standalone/troubleshooting/
===============================================================================
App 40261 stderr: ruby-2.2.3 is not installed.
App 40261 stdout: To install do: 'rvm install ruby-2.2.3'
App 40261 stdout:
App 40384 stdout:   

不确定它指的是什么是意外的令牌字符串 «HydraCAD-R»。任何帮助将不胜感激。

【问题讨论】:

  • 在您的本地机器上尝试“rake assets:precompile -e production”,它应该会给出一个详细的错误,您会在服务器上收到该错误,然后它可以帮助跟踪错误
  • 运行该脚本时出现错误:rake aborted! NameError: #<:application:0x007fd1db01e758> 的未定义局部变量或方法“生产”
  • 奇怪,你怎么能在生产服务器上本地运行你的项目?
  • 基本上当我在服务器上遇到编译问题时,我可以很容易地在我的本地生产服务器上得到它,所以我首先在我的本地机器上解决它然后推送到服务器
  • 项目在本地运行良好,没有错误。

标签: ruby-on-rails capistrano passenger web-deployment


【解决方案1】:

我有类似的问题,通过重新启动液滴解决了我的问题

【讨论】:

  • 我想我最终不得不将我的 production.rb 环境文件更改为具有config.assets.compile = false,然后我做了一个rake assets:clobberrake assets:precompile
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-04-06
  • 1970-01-01
  • 2022-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多