Właśnie zaczynam od Erlanga, więc w moim kodzie nie ma nic skomplikowanego. Często robię błędy, które prowadzą do błędów w czasie wykonywania.Jak dowiedzieć się, co spowodowało błąd runtime w Erlangu?
Problem jest zawsze widzę rzeczy tak:
{ "init zakończony do_boot" {undef [{ 'lexer_app.beam', start, [], []}, {startowych , start_it, 1, []}, {startowych, start_em, 1, []}]}}
zrzutu awaryjnego zapisywany jest: erl_crash.dump ... Gotowe startowy kończące się w do_boot()
Co prawie nie daje mi szybkiej informacji o tym, co poszło nie tak.
Tak więc, zastanawiam się, to jedyny sposób na debugowanie takich błędów, aby zaglądnąć w erl_crash.dump, który, szczerze mówiąc, wygląda jak całkowita abrakadabra i muszę jakoś rozgryźć nawet proste głupie błędy, patrząc na to ?
Główne pytania, czy można uzyskać bardziej przyjazne człowiekowi błędy, np. "Nie można przypisać zmiennej numerycznej" 5: 6 Person "?
Jaki jest zwykle przepływ pracy przy debugowaniu aplikacji?
tutaj można przeczytać początku wiadomości: init VM zatrzymuje się do_boot ponieważ znalazł wywołanie niezdefiniowanej funkcji: "lexer_app.beam": start. Domyślam się, że zacząłeś erl z "erl -s lexer_app.beam" zamiast "erl -s lexer_app", z możliwością dodania ścieżki do pliku belki "erl -s lexer_app -pa path/to/beam" – Pascal