Как автоматически подключить JVisualVM к недолговечной программе? - PullRequest
8 голосов
/ 05 марта 2011

Коротко читая руководства и играя с JVisualVM, я могу вручную подключить его к долго работающему серверу или приложению Swing, но я также хотел бы использовать его для коротких программ, которые запускаются менее чем за секунду.

Полагаю, у меня может быть блок программы на консоли, подключить JVisualVM, а затем нажать клавишу, чтобы программа действительно работала.Есть ли менее хитрый обходной путь?

(Это в основном для моего собственного любопытства, и было бы неплохо использовать полированный графический интерфейс, такой как JVisualVM вместо -Xprof или HPROF).

Ответы [ 2 ]

3 голосов
/ 17 июля 2012

Если вы используете eclipse, вы можете использовать опцию «Остановить в главном» в режиме отладки и добавить следующие строки в качестве аргументов вашего процесса

-Dcom.sun.management.jmxremote.port=<fixed_port_number>
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=false

После запуска в режиме отладки и блокировкизатем подключите к нему jvisualvm, подключив его к процессу, используя указанный номер порта.

2 голосов
/ 06 апреля 2011

Добавьте suspend = y в ваши настройки отладки.Это приведет к остановке вашей программы, пока не будет подключен отладчик / профилировщик.

...