2015-12-23 34 views
6

Non riesco a capire come ottenere Pignoni per indicare quale file ha causato un errore di compilazione. Ho semplicemente ottenere errori come il seguente:La pipeline delle risorse dei binari non indica quale file ha prodotto un errore

CoffeeScript

Completed 500 Internal Server Error in 14671ms (ActiveRecord: 281.4ms)

ExecJS::RuntimeError - SyntaxError: [stdin]:1:5: unexpected ,:
  execjs (2.6.0) lib/execjs/external_runtime.rb:84:in `extract_result'
<backtrace continues>

Quale può essere attivato aggiungendo la seguente sintassi non valida per un file .coffee incluso:

test, 

Sass

Completed 500 Internal Server Error in 14671ms (ActiveRecord: 281.4ms)

Sass::SyntaxError - Invalid CSS after "0": expected expression (e.g. 1px, bold), was ";":
  sass (3.4.20) lib/sass/scss/parser.rb:1179:in `expected'
<backtrace continues>

Quale può essere attivato con l'aggiunta del punto e virgola in un file .sass in questo modo:

.test 
    top: 0; 

Nel caso di avvertimenti, i log del server mostrano qualcosa di utile come

WARNING on line 9 of /path/to/file.sass: This selector doesn't have any properties and will not be rendered.

Tuttavia, gli errori di sintassi sembra semplicemente che mostri un errore 500 e mi dica la riga dell'errore, ma non il file in cui si trovava. Ho esaminato i backtrace e non danno alcuna indicazione sul file in cui si è verificato l'errore. Come posso ottenere l'output per mostrare il file in cui si è verificato l'errore SyntaxError?

Versioni (tutto ultima stesura di questo documento):

  • Rails 4.2.5
  • Pignoni-Rails 3.0.0
  • Pignoni 3.5.2
  • Sass-Rails 5.0.4
  • Sass 3.4.20
  • caffè in Rails 4.1.0
  • caffè-script 2.4.1
  • caffè-Script-Source 1.10.0

risposta

1

continuare a leggere che 500 errore nel server. Dovrebbe mostrare il file e la riga del file che ha causato l'errore. Nell'esempio riportato di seguito dice app/attività/fogli di stile/test.sass: 2

Completed 500 Internal Server Error in 152ms (ActiveRecord: 0.0ms) 

ActionView::Template::Error (Invalid CSS after "0": expected expression (e.g. 1px, bold), was ";"): 
    2: <html> 
    3: <head> 
    4: <title>StackoverflowQuestions</title> 
    5: <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %> 
    6: <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %> 
    7: <%= csrf_meta_tags %> 
    8: </head> 
    app/assets/stylesheets/test.sass:2 
    app/views/layouts/application.html.erb:5:in `_app_views_layouts_application_html_erb__1109435584510058936_70275420820360' 
+1

Grazie per la risposta, ma sfortunatamente i miei backtrace non sembrano così. Ho modificato la domanda per includere la prima riga del backtrace nel caso in cui ciò sia d'aiuto. Continua semplicemente attraverso lo stack gemma da lì, senza alcun riferimento ai nomi dei file nel mio progetto. – swrobel