Search code examples
ruby-on-railsrequirejsprecompile

RubyOnRails RequireJS + conditioner js - precompile failed


I've a huge problem with asset precompile on production mode...

I'm using RequireJS and Conditioner.js to modularize my frontend, there's no problem on my development server (without asset precompilation), but I can't precompile asset on production.

Here is my requirejs.yml config:

map:
  '*':
    conditioner: "lib/conditioner"

modules:
  - name: "application"
  - name: "jquery"
  - name: "conditioner"

paths:     
  jquery:       "lib/jquery"
  conditioner:  "lib/conditioner"

priority: ['jquery', 'conditioner', 'application']

Here is a stack from my console:

Requirejs::BuildError: Cannot compute digest for missing asset:/home/birdnet/rails_projects/reczna-chks.pl/tmp/requirejs/dst/conditioner.js
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/gems/requirejs-rails-0.9.5/lib/requirejs/rails/builder.rb:22:in `digest_for'
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/gems/requirejs-rails-0.9.5/lib/tasks/requirejs-rails_tasks.rake:149:in `block (5 levels) in <top (required)>'
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/gems/requirejs-rails-0.9.5/lib/tasks/requirejs-rails_tasks.rake:149:in `sub'
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/gems/requirejs-rails-0.9.5/lib/tasks/requirejs-rails_tasks.rake:149:in `block (4 levels) in <top (required)>'
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/gems/requirejs-rails-0.9.5/lib/tasks/requirejs-rails_tasks.rake:146:in `each'
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/gems/requirejs-rails-0.9.5/lib/tasks/requirejs-rails_tasks.rake:146:in `block (3 levels) in <top (required)>'
Tasks: TOP => requirejs:precompile:all => requirejs:precompile:digestify_and_compress
(See full trace by running task with --trace)
rake aborted!
Command failed with status (1): [/home/birdnet/.rvm/rubies/ruby-2.1.2/bin/r...]
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/gems/requirejs-rails-0.9.5/lib/tasks/requirejs-rails_tasks.rake:19:in `ruby_rake_task'
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/gems/requirejs-rails-0.9.5/lib/tasks/requirejs-rails_tasks.rake:86:in `block (3 levels) in <top (required)>'
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/bin/ruby_executable_hooks:15:in `eval'
/home/birdnet/.rvm/gems/ruby-2.1.2@reczna-chks/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => assets:precompile => requirejs:precompile:external

It seems to be a bad path in configuration, but in my opinion every path looks ok.

Can anyone help me? I'm really stuck but won't to disable precompilation on production.


Solution

  • Try changing the path in modules to: - name: "lib/conditioner"