Error: Sprockets::FileNotFound: couldn't find file 'application.scss' for Heroku

Error: Sprockets::FileNotFound: couldn't find file 'application.scss' for Heroku

我遇到了 Sprockets 在 rake assets:precompile 期间找不到文件的问题。我以前没有遇到过这个问题,但是当我添加一个生成的迁移(在本地构建)时,Heroku 无法构建我的应用程序,我不知道为什么,因为它是在本地构建的(没有我 运行ning一个额外的抽成 assets:precompile).

错误信息是这样的:

-----> Preparing app for Rails asset pipeline
       Running: rake assets:precompile
       rake aborted!
       Sprockets::FileNotFound: could not find file: /tmp/build_dd4a799769e6963b7b292df72db58fd8/username-appname-uniqueid/app/assets/stylesheets/application.scss

任何关于这是为什么的帮助?感谢您的宝贵时间!

PS。作为旁注 - 当我 运行 "rake assets:precompile" 然后推送到 Heroku 时,应用程序构建。但是,带有 css class "fa-bars" 的项目变得混乱...这是为什么?

谢谢!

我在 Sprockets 3.3.3 和我们的 Rails 4.2.3 应用程序中添加了同样的问题。

我通过清理我们的 dyno 构建缓存来修复它:

heroku repo:purge_cache

请注意,您的下一次部署将花费更长的时间,因为捆绑程序缓存也将被清除。

在 rails 5 如果你使用 Bower,在 bower_rails.rb

中取消注释
  #bower_rails.install_before_precompile = true