2012-01-18 8 views
3

私はherokuにプッシュしようとしているレール3.1アプリを持っています。プッシュが機能している間、エラーは資産を掘り起こそうとするときに発生します。エラーが発生する`rake assets:precompile`を実行したときのエラー

Unexpected token punc, expected punc (line: 11225, col: 7, pos: 321149) 
undefined 
(in /Users/Matt/Orchive/Orchive/app/assets/javascripts/application.js) 

ただし、このapplication.jsファイルにはいくつかのコメントしかありません。ここでは、次のとおりです。

// This is a manifest file that'll be compiled into including all the files listed below. 
// Add new JavaScript/Coffee code in separate files in this directory and they'll automatically 
// be included in the compiled file accessible from http://example.com/assets/application.js 
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the 
// the compiled file. 
// 
//= require jquery 
//= require jquery_ujs 
//= require_tree 

私は本当に資産を理解していないが、私は

/Users/Matt/.rvm/rubies/ruby-1.9.2-p180/bin/ruby /Users/Matt/.rvm/gems/ruby-1.9.2-p180/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets 
rake aborted! 
Unexpected token punc, expected punc (line: 11225, col: 7, pos: 321149) 

undefined 
(in /Users/Matt/Orchive/Orchive/app/assets/javascripts/application.js) 

Tasks: TOP => assets:precompile:primary 
(See full trace by running task with --trace) 
rake aborted! 
Command failed with status (1): [/Users/Matt/.rvm/rubies/ruby-1.9.2-p180/bi...] 

Tasks: TOP => assets:precompile 
(See full trace by running task with --trace) 

をプッシュする前に、端末でrake assets:precompileを実行しようとしたこの大規模なエラーを得た私はこれを編集して、どのようなことにそれを変更することができますそれがより役に立ちそうなら、--traceと表示されます。 これは一般的な、簡単な修正エラーで、私はちょうどやり方がわからないと思います。

+0

エラーの原因となるapplication.jsの行が表示される場合があります。 – sosborn

+0

は奇妙な部分ですが、app/assets/javascript/application.jsにはコメントのみが含まれています。 – Vasseurth

+0

他のjavascriptファイルはそのディレクトリにありますか? – sosborn

答えて

5

このURLを見てください。これはほぼ同じエラーです。 https://github.com/resolve/refinerycms/issues/1186

修正はここにある: https://github.com/resolve/refinerycms/pull/1189

概要:あなたは、あなたのapplication.jsファイルのどこかに「コンマ」記号や「セミコロン」記号が欠落しています。次のコマンドによってローカルで実行しながら、ここに ログインフルトレース:

bundle exec rake assets:precompile --trace 
+0

refinerycmsを使用していません – Vasseurth

+0

refinerycmsを使用していると言った人はいますか? エラーとエラーの原因を確認してください!アプリケーションでカンマまたはセミコロンがありません。jsファイルまたはapplication.jsファイルに含まれているファイル(require treeを使用しているようなものです。つまり、すべてのファイルがjavascriptフォルダからインクルードされることを意味します)があります。 : –

+0

このコマンドの出力を貼り付けます 'bundle exec rake assets:precompile --trace' –

2

私の提案。 require_tree行を削除します。これは過度の傾向にあり、より多くの問題を作り出します。ディレクトリ内のすべてを追加するのではなく、特にファイルを必要とする方がはるかに優れています。

http://guides.rubyonrails.org/asset_pipeline.html#manifest-files-and-directives

説明

カンマが間違っています。またはセミコロン。 「しかし、これはapplication.jsファイルは一部だけが含まれていることを、あなたが言及した

//= require jquery 
//= require jquery_ujs 
//= require_tree 

は、あなたの質問に見て:それは別のファイルに、おそらくですが、注目すべきラインがrequire_treeラインである、それはjqueryのかjquery_ujsにだと非常に低いのですコメント。 "それらはコメントではありません!それらは実際にそれらのファイルを必要とし、それらを含んでいます。Railsの魔法、この場合はSprocketsは、javascriptファイルを書くことができ、上にすべてのファイルを含む必要があるということです。この方法では、jQueryのようなベンダーライブラリを含めることができますが、1つのjavascriptファイルで作業するだけで済みます。

上記のコメントにはjquery、jqueryヘルパーライブラリのライブラリ、require_treeにはjavascriptsディレクトリ内のすべてのファイルが含まれています。あなたのローカルマシン上であなたのウェブサイトを開き、ソースを見てください。私はあなたが期待していなかったいくつかの追加のjavascriptファイルを持っていると思います。

関連する問題