Используйте -javaagent без агента упаковки в банку

Можно ли запустить java -javaagent:myagent.jar some.package.Main без упаковки агента в банку? Что-то вроде java agent.MyAgent some.package.Main

У меня есть исходный код для агента, и я хотел бы иметь возможность отладить его, а затем изменить, чтобы вообще не использовать -javaagent, а вместо этого выбрать some.package.Main для выполнения через графический интерфейс.

BTrace может подключаться к запущенному процессу, используя PID, или подключаться к процессу, используя -javaagent. Я ищу что-то похожее на первый подход (с использованием PID), но я также могу начать процесс с нуля.


person Artur    schedule 21.11.2010    source источник


Ответы (1)


В Java 6 можно использовать Attach API для загружать агент программно (без -javaagent), но он по-прежнему требует, чтобы агент был упакован как jar.

person axtavt    schedule 21.11.2010
comment
Спасибо! Из API я вижу, как присоединить агент к уже созданному процессу, и я знаю PID. Могу ли я сделать это, чтобы пройти в класс с основным методом? Я также хочу иметь возможность контролировать запуск процесса. - person Artur; 22.11.2010