Nie mogę na całe życie dowiedzieć się, jak zdobyć Sprockets, aby wskazać, który plik spowodował błąd kompilacji. Ja po prostu pojawiają się błędy jak poniżej:Potok zasobów Railsy nie wskazuje, który plik spowodował błąd
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>
który może być wywołany przez dodanie następujących nieprawidłowej składni do dołączonego pliku .coffee:
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>
który może być wywołany przez dodanie średnika do pliku .sass tak:
.test
top: 0;
W przypadku ostrzeżenia, logi serwera pokazują coś pomocny jak
WARNING on line 9 of /path/to/file.sass: This selector doesn't have any properties and will not be rendered.
Jednakże, błędy składniowe wydaje się po prostu wyrenderować błąd 500 i powiedzieć mi wiersz błędu, ale nie który to był. Przeszukałem ślady i nie podają one żadnych informacji o pliku, w którym wystąpił błąd. Jak uzyskać dane wyjściowe, aby pokazać plik, w którym wystąpił błąd SyntaxError?
Wersje (wszystko ostatni jak to pisze):
- Rails 4.2.5
- Sprockets szyn 3.0.0
- Sprockets 3.5.2
- Sass-Rails 5.0.4
- Sass 3.4.20
- Kawa Rails 4.1.0
- coffeescript 2.4.1
- Coffee-Script-Source 1.10.0
Dziękuję za odpowiedź, ale niestety moje backtraces nie wyglądają tak. Zmieniłem to pytanie tak, aby zawierało pierwszą linię śledzenia wstecznego w razie potrzeby. Po prostu przechodzi dalej przez stos klejnotów, bez odniesienia do nazw plików w moim projekcie. – swrobel