Hier ist mein ANT JUnit Ziel
%Vor%Meine Unit-Tests laufen gut, wenn sie durch Eclipse laufen, aber scheitern, wenn ich sie von ANT läute. Ich möchte, dass es bei einem Unit-Test an meinem Haltepunkt aufhört. Aus der Dokumentation weiß ich, dass ich diese jvmarg hinzufügen muss, aber ich kann es nicht stoppen damit ich sie offensichtlich nicht am richtigen Ort habe. Außerdem glaube ich nicht, dass der Port korrekt ist, aber welchen Port sollte ich verwenden? Ich musste beim Debuggen von JUnits durch Eclipse keinen Debug-Port einrichten, es funktionierte einfach
Sie müssen einen Moment vergessen, in dem Sie JUnit-Tests und ANT-Ziele in Eclipse ausführen können. Sie möchten eine Java-Anwendung debuggen, die zufällig die Hauptklasse org.apache.tools.ant.Main
hat und die mit ant
von der Befehlszeile gestartet werden kann.
Sie haben jetzt zwei Optionen: Sie können eine Startkonfiguration erstellen, die org.apache.tools.ant.Main
aufruft, aber das ist ziemlich kompliziert einzurichten (Sie müssen alles replizieren, was das ant
-Skript beim Start macht).
Die andere Alternative besteht darin, ant
korrekt zu konfigurieren. In Ihrem Fall laufen die Tests innerhalb des Prozesses ant
, aber ich kenne keine einfache Möglichkeit, -Xdebug
an Ant selbst zu übergeben. Daher müssen Sie die Tests in einem neuen Prozess ausführen. Fügen Sie dies der Aufgabe junit
hinzu:
Ohne dies werden jvmarg
-Parameter ignoriert.
Der nächste Schritt besteht darin, eine Debug-Konfiguration in Eclipse zu erstellen. Dieser Artikel erläutert dies im Detail. Für Sie ist nur der letzte Teil vor "Schlussfolgerung" wichtig.
Detaillierte Anweisungen:
Entnommen aus hier .