在将Rails4代码推送到heroku时,我收到以下错误,这已经在过去2天内开始发生,否则会顺利进行
Writing config/database.yml to read from DATABASE_URL
-----> Preparing app for Rails asset pipeline
Running: rake assets:precompile
rake aborted!
couldn't find file '/tmp/build_b6402ff8-bda2-4bc5-95dc-2efe7a9044bc/tmp/i18n-js.cache'
(in /tmp/build_b6402ff8-bda2-4bc5-95dc-2efe7a9044bc/vendor/bundle/ruby/2.0.0/gems/i18n-js-2.1.2/vendor/assets/javascripts/i18n/translations.js.erb)
/tmp/build_b6402ff8-bda2-4bc5-95dc-2efe7a9044bc/vendor/bundle/ruby/2.0.0/gems/sprockets-2.10.0/lib/sprockets/context.rb:87:in `resolve'
这是我的production.rb
的条目config.assets.initialize_on_precompile = true
我可以运行RAILS_ENV =生产佣金资产:本地预编译。虽然我没有将预编译资产推送到服务器。
我通过我的gem文件安装了I18n-js 2.1.2版本,它的Rails4服务器为我运行。
急需帮助。
答案 0 :(得分:6)
提高资产版本似乎有效。更改 application.rb 中的以下行:
config.assets.version = '1.0'
答案 1 :(得分:0)
尝试使用以下rake任务清除tmp文件夹:
rake tmp:clear
这将允许Heroku对您的所有资产进行全新的预编译。
答案 2 :(得分:0)
我摆脱了i18n-js rails gem,以解决问题。 我最低限度地使用它,所以用我的一些小代码替换它。
在Heroku上部署时,Gem和Rails 4存在问题。