2014-03-25 1 views
6

Ich habe eine JAR-Datei, die ein Problem hat, und ich möchte es debuggen.Debug JAR-Datei in Eclipse

Ich habe die Anwendung auf Eclipse erstellt. Während der Entwicklerphase habe ich das Debuggen aber mit dem Quellcode gemacht. Ich wollte die JAR-Datei debuggen, um den Grund des Fehlers herauszufinden, d. H. Es könnte sich um einen Quellcode handeln, der sich von der JAR-Datei oder ein JAR-Dateiproblem unterscheidet.

Antwort

14

Scheint wie Sie Remote-Debuggen möchten.

Die Verwendung dieser Befehl Ihr Glas starten:

java -Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=y -jar [JAR NAME HERE] 

es so etwas wie Staat sollte:

Listening for transport dt_socket at address : 8001 

Und in Eclipse, erstellen Sie eine "Remote Java Application" Debug-Konfiguration. Die Konfiguration ist das einzige, was zählt, solange Sie Ihr Projekt von Interesse offen haben. Fügen Sie das gewünschte Projekt [s], das Sie debuggen möchten, in Ihren Quellensuchpfad ein und legen Sie die Portnummer über den Befehl java launch auf die konfigurierte Adresse fest.

Wenn Sie eine Verbindung zu Ihrem debug-fähigen Start von jar herstellen, wird Ihr jar die Ausführung anhalten und auf Debugger-Eingaben warten, wenn die Haltepunkte erreicht werden. Stellen Sie sicher, dass Sie die gleiche Version des Codes in Ihrem Jar und Ihrer Eclipse haben.

0

Sie können einen Java Decompiler für diesen Effekt verwenden. Ich schlage vor, jd (http://jd.benow.ca/).

Sie müssen jedoch auch eine Neuausrichtungsfunktion (http://mchr3k.github.io/jdeclipse-realign/) für die übereinstimmenden Zeilennummern einfügen.

Natürlich kann dies nur funktionieren, wenn Debug-Informationen in der JAR-Datei enthalten sind.