10

the Rails Guides says:

If there are missing precompiled files in production you will get an Sprockets::Helpers::RailsHelper::AssetPaths::AssetNotPrecompiledError exception indicating the name of the missing file(s).

I do execute:

bundle exec rake assets:precompile

however I don't get any error, and my javascript file is missing in the manifest.yml. Also it's not appearing in public/assets, so the problem is only on production.

I have in the application.js

//= require formalize/jquery-formalize

What am I missing?

Thanks.

valk
  • 9,363
  • 12
  • 59
  • 79

2 Answers2

17

Actually two things needed to do:

config.assets.precompile += %w( *.js *.css )

as described here, and

config.serve_static_assets = true

for local production testing when using

rail s

of course using

rake assets:precompile

however in my case - without config.assets.precompile this would have no effect since the manifest didn't contain any reference to my javascript file.

HTH.

Community
  • 1
  • 1
valk
  • 9,363
  • 12
  • 59
  • 79
  • Thanks, you saved me hours. I tried all of the above except ... "config.assets.precompile += %w( *.js *.css )". That did the trick – Steve Sheldon Apr 25 '12 at 08:31
  • After 3 hours of similar issues where assets were available in Development, but not on Production... those two lines in production.rb saved me! Now Development and Production behave in the same manner! – ATSiem May 14 '13 at 01:56
5

Try just:

rake assets:precompile

I've had similar issues and that has worked. You can also delete the contents of the /public/assets directory and try running it again.

Joe Saunders
  • 798
  • 1
  • 9
  • 27