Ich beginne gerade mit Erlang, also ist mein Code noch nicht komplex. Oft mache ich Fehler, die zu Laufzeitfehlern führen.Wie finde ich heraus, was einen Laufzeitfehler in Erlang verursacht hat?
Das Problem ist ich sehe die Dinge immer so:
getan{ "init in do_boot beendet", {undef, [{ 'lexer_app.beam', start, [], []}, {init , start_it, 1, []}, {init, start_em, 1, []}]}}
Crash-Dump wird geschrieben: erl_crash.dump ... init Abschluss in do_boot()
Welches gibt mir kaum schnelle Informationen darüber, was schief gelaufen ist.
Also, ich frage mich, ist der einzige Weg, um die Fehler so zu debuggen, um in erl_crash.dump zu suchen, die, ehrlich gesagt, aussieht wie totale abrakadabra und ich muss irgendwie einfache einfache dumme Fehler herausfinden, indem Sie hineinschauen ?
Die wichtigsten Fragen, ist es möglich, mehr menschenfreundliche Fehler zu bekommen, wie "5: 6 Person Variable des Typs String ist nicht zu Typ-Nummer zuweisbar"?
Wie sieht der übliche Workflow zum Debuggen der App aus?
hier einen kleinen Trick können Sie den Anfang der Nachricht lesen kann: die init der VM stoppt in do_boot, weil es eine gefunden hat Aufruf an eine undefinierte Funktion: 'lexer_app.beam': start. Ich nehme an, Sie haben erl mit "erl -s lexer_app.beam" anstelle von "erl -s lexer_app" gestartet, eventuell mit der Option den Pfad zur Beamdatei hinzuzufügen "erl -s lexer_app -pa path/to/beam" – Pascal