Wie gebe ich einen Namen zu einem VisualVM „“?
Frage
JDK 1.6 ist mit einem praktischen Tool namens VisualVM gebündelt, die Sie mit laufenden Java-Prozesse zu untersuchen und interact können. Ein Merkmal ist, dass es erkennt automatisch JVMs auf dem lokalen Rechner läuft. Die meisten sind als aufgelistet „(pid xxxx)“, aber einige haben einen Namen und ein Symbol, wie VisualVM selbst und andere wie NetBeans (siehe Screenshot in dieser dzone Artikel zum Beispiel).
Wie spritze ich meine Bewerbung Namen und das Symbol in die JVM, so dass es richtig in VisualVM der Anwendungsliste auftaucht? Hat mein app Notwendigkeit zu laufen JRE 1.6 oder kann ich dies tun unter 1.5 auch?
Lösung
Ich löste die Hälfte meiner Frage über eine NetBeans Forum posten Antwort. eine JVM-Befehlszeile arg von -Dvisualvm.display.name=FooBar
Hinzufügen macht VisualVM die App als „FooBar“ zeigen. Aber ich kann immer noch nicht herausfinden, wie das Symbol beeinflussen.
UPDATE: Ach, ich glaube, ich meine Antwort für das Symbol gefunden. Die Symbole sind hartcodiert in VisualVM über MainClassApplicationTypeFactory in der VisualVM Quelle, von der statischen Methode ApplicationTypeFactory.getApplicationTypeFor (Application) aufgerufen. Ich kann keinen Weg sehen, ein neues Symbol in VisualVM außer indem ein VisualVM Plugin zu injizieren, die eine neue Art Fabrik registrieren konnten -. Die Glassfish-Plugin tut dies über GlassFishApplicationTypeFactory.initialize () zum Beispiel