Rails在Heroku Sprockets上预编译资产:: FileNotFound

时间:2016-02-06 20:22:10

标签: heroku ruby-on-rails-3.2 asset-pipeline

我尝试将简单的Rails应用程序部署到Heroku。这个应用程序只是尝试与Heroku使用凉亭。

不幸的是我在Heroku上遇到了预编译资产的问题。 这给了我错误Sprockets::FileNotFound

remote: -----> Preparing app for Rails asset pipeline
remote:        Running: rake assets:precompile
remote:        rake aborted!
remote:        Sprockets::FileNotFound: couldn't find file './app/App'
remote:        (in /tmp/build_fe6dc0e2c0063705b279b26e4aa2432d/app/assets/javascripts/application.js:12)

我不知道原因是什么。 App.js是我自己的文件,肯定存在。

需要提及rake assets:precompile在我的本地计算机上正常工作。

这是我的applications.js,其中包含所有其他文件

//= require jquery
//= require jquery_ujs

//= require vendor/angular/angular
//= require vendor/angular-route/angular-route
//= require vendor/angular-resource/angular-resource
//= require vendor/angular-sanitize/angular-sanitize

//= require vendor/moment/moment
//= require vendor/angular-moment/angular-moment

//= require      ./app/App
//= require      ./app/router
//= require_tree ./app/controllers
//= require_tree ./app/directives
//= require_tree ./app/filters

在一些类似的问题中,我找到了运行heroku repo:purge_cache的建议。 但这对我来说也没有。

~/tmp/repo_tmp $ cd unpack
~/tmp/repo_tmp/unpack $ tar -zxf ../repo-cache.tgz

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

所有源代码都发布在GitHub上 https://github.com/ivanovalexey/bowerrr

有人可以帮我搞清楚吗? 谢谢。

1 个答案:

答案 0 :(得分:0)

解决。问题出在文件名./app/App.js上。我将其重命名为./app/main.js并且有效。仍然想知道为什么它在当地并不重要。