2013-06-19 86 views
1

我有一個Rails 3.2.8應用程序,它在我的開發環境中似乎很好地工作,但是當部署到Heroku時,資產管道不再正確地編譯我的資產 - 或者至少,不在我的依賴中加載。Heroku上的資產管道沒有加載依賴

例如產生的「編譯」 JS資產,是在http://myappsubdomain.herokuapp.com/assets/application-b389f6c8ee6250ebc143feb659f40ed9.js發現包含原始源代碼:

//= require jquery 
//= require jquery-ui 
//= require jquery_ujs 
//= require twitter/bootstrap 
//= require_tree . 
$(".tip").tooltip(); 

這也是我的CSS的資產,其中包括直接在我的應用程序放置在任何風格的真實。 。CSS,但

在沒有加載所需的相關資產的預編譯似乎沒有錯誤的部署期間運行:

-----> Preparing app for Rails asset pipeline 
     Running: rake assets:precompile 
     Asset precompilation completed (8.79s) 

我注意到,如果我手動運行「heroku運行rake資源:預編譯」我運行沒有錯誤,只有幾個折舊通知。

如果我在我的開發環境中啓用了資產編譯功能,那麼所有內容似乎都會被壓縮到單個包含的資產中,就像我期望的那樣。

任何人都可以提供任何意見嗎?

+0

因爲在本地運行編譯似乎沒有問題我已經回滾到這種方法,而不是讓Heroku編譯資產作爲slug的一部分 - 我仍然不明白爲什麼這不直接工作Heroku雖然。 – SirRawlins

回答

0

經過一些更多的實驗後,我注意到我有一個新的Heroku實例在Ruby 2上運行(顯然是在準備Rails 4),但是我的開發環境和運行這個給定代碼庫的現有heroku實例在1.9.3上。

我已經更新了我的Gemfile以包含Ruby版本的明確定義,現在事情看起來在部署時可以很好地工作。