2010-11-21 5 views
5

Ist es möglich, java -javaagent:myagent.jar some.package.Main ohne Agenten in einem Glas verpackt zu betreiben? So etwas wie java agent.MyAgent some.package.MainVerwenden Sie -javaagent ohne Verpackungsmittel in ein Glas

ich einen Quellcode für einen Agenten habe und möchte in der Lage sein, es zu debuggen und es später zu ändern, so dass es nicht erforderlich ist, -javaagent überhaupt zu verwenden, sondern stattdessen some.package.Main wählt durch GUI auszuführen.

BTrace kann über PID eine Verbindung zu einem laufenden Prozess herstellen oder über -javaagent eine Verbindung zu einem Prozess herstellen. Ich suche nach etwas ähnlich dem ersten Ansatz (mit PID), aber so kann ich einen Prozess von Grund auf neu starten.

Antwort

3

In Java 6 können Sie Attach API verwenden, um den Agenten programmgesteuert zu laden (ohne -javaagent), aber der Agent muss weiterhin als jar gepackt werden.

+2

Danke! Von der API kann ich sehen, wie man einen Agenten an einen Prozess anfügt, der bereits erstellt wurde, und ich kenne PID von. Kann ich es tun, also gebe ich eine Klasse mit Hauptmethode? Ich möchte in der Lage sein, den Prozess auch zu starten. – Artur

Verwandte Themen