2012-01-31 9 views
5

レール3.0.9から3.2.1にアップグレードしました。bundle exec rake assets:precompileを実行するとエラーが発生しますが、バックトレースでは私のcssまたはscssのどこに通知されません。構文の問題が発生しています。私は "0ee5c0e69c92af0"のgrepを試みましたが、その文字列は私のプロジェクトには表示されません。Rails資産パイプラインベターエラーまたはスタックトレース

bundle exec rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets --trace 
** Invoke assets:precompile:all (first_time) 
** Execute assets:precompile:all 
** Invoke assets:precompile:primary (first_time) 
** Invoke assets:environment (first_time) 
** Execute assets:environment 
** Invoke tmp:cache:clear (first_time) 
** Execute tmp:cache:clear 
** Execute assets:precompile:primary 
rake aborted! 
Invalid CSS after "...0ee5c0e69c92af0": expected ";", was ".png;" 

プリコンパイルプロセスからより良いエラーメッセージまたはスタックトレースを取得する方法はありますか?私のcss.erbファイルをコンパイルして、このタスクなしで構文をチェックできる別の方法はありますか?

答えて

2

私が知っているより良い方法はありません。このメッセージは、すべてのファイルを連結した後、Sprockets(実際にはCSSプロセッサ)によって生成されるためです。

config.assets.precompile = ['*.css'] 

その後、いずれかがあなたのapplication.cssから必要で削除して、ローカルプリコンパイルタスクを実行します。あなたができる

一つのこと(一時的には)これとapplication.rbのデフォルトのプリコンパイルの配列を置き換えるです。これにより、個々のCSSファイルが個別にコンパイルされ、問題がどこにあるかという手がかりが得られます。

+0

を私は '.PNGを探して第二部の周りgrepすることができました;'ではなく、明らかに自動生成されたハッシュ、および問題を修正。私はこのメソッドがうまくいくと思いますが、デフォルトではより良いエラーが出ることを願っています。 – Schneems

+0

Sprocketsプロジェクトにバグを報告して、そのようなエラーのコンテキストをさらに提供することは可能でしょうか? –

0

確かに、熊手する--traceフラグを渡します。

$ bundle exec rake --trace assets:precompile 
+0

既に、上記を参照してください。 – Schneems

+0

おっと、テキストエリアの端から落ちました。 –

0

私は、同様の資産パイプラインにアップグレードして、この同じエラーを得て、ここでは私のために犯人でした。アセットパイプラインを追加するときには、スタイルシートをURL(アセットパイプラインの非フィンガープリント/非キャッシュファイルを指す)から新しいimage-urlヘルパー(これはフィンガープリントされた/アセットパイプラインのキャッシュされたファイル)。 docsのセクション2.3を参照してください。

プリ資産パイプライン(.sass):

#background 
    background-image: url('Long Path 1920x1200.jpg') 

ポストアセットパイプライン(.sass):

#background 
    background-image: image-url('Long Path 1920x1200.jpg') 

残念ながら、新しい画像のURLヘルパーは、スペースに対処することはできませんファイル名、古いURLは可能です。だから、bundle exec rake assets:precompileを実行するとブームになります。解決策は、スペースを削除することです。

修正されたコード:

#background 
    background-image: image-url('long-path-1920x1200.jpg') 
関連する問題