In den anderen Beiträgen wird beschrieben, was ein Stack-Trace ist, aber es kann trotzdem schwierig sein, damit zu arbeiten.
Wenn Sie einen Stack-Trace erhalten und die Ursache der Exception nachvollziehen wollen, ist ein guter Ausgangspunkt für das Verständnis der Exception die Verwendung der Java Stack Trace-Konsole において Eclipse . Wenn Sie eine andere IDE verwenden, kann es eine ähnliche Funktion geben, aber diese Antwort bezieht sich auf Eclipse.
Stellen Sie zunächst sicher, dass Sie alle Ihre Java-Quellen in einem Eclipse-Projekt zur Verfügung haben.
Dann im Java Perspektive, klicken Sie auf das Feld Konsole (in der Regel am unteren Rand). Wenn die Konsolenansicht nicht sichtbar ist, wählen Sie den Menüpunkt Fenster -> Ansicht anzeigen und wählen Sie Konsole .
Klicken Sie dann im Konsolenfenster auf die folgende Schaltfläche (rechts)
und wählen Sie dann Java Stack Trace Konsole aus der Dropdown-Liste.
Fügen Sie den Stack-Trace in die Konsole ein. Es wird dann eine Liste von Links zu Ihrem Quellcode und zu anderen verfügbaren Quellcodes angezeigt.
So könnte es aussehen (Bild aus der Eclipse-Dokumentation):
Der zuletzt durchgeführte Methodenaufruf ist der top des Stapels, d. h. die oberste Zeile (ohne den Nachrichtentext). Wenn Sie auf dem Stapel nach unten gehen, gehen Sie in der Zeit zurück. Die zweite Zeile ist die Methode, die die erste Zeile aufruft, usw.
Wenn Sie Open-Source-Software verwenden, müssen Sie möglicherweise die Quellen herunterladen und Ihrem Projekt beifügen, wenn Sie sie untersuchen wollen. Laden Sie die Quellcode-Jars herunter, öffnen Sie in Ihrem Projekt die Referenzierte Bibliotheken Ordner, um Ihr jar für Ihr Open-Source-Modul zu finden (dasjenige mit den Klassendateien), dann klicken Sie mit der rechten Maustaste, wählen Eigenschaften und fügen Sie das Quell-Jar hinzu.
34 Stimmen
Wenn eine Stacktrace-Zeile nicht den Dateinamen und eine Zeilennummer enthält, wurde die Klasse für diese Zeile nicht mit Debug-Informationen kompiliert.