在 VisualVM 中分析整个 Java 程序的执行
在Java分析中,似乎现在所有(免费)道路都通向JDK6中包含的VisualVM分析器。它看起来像一个很好的程序,每个人都吹捧如何将“附加到正在运行的进程”作为主要功能。问题是,这似乎是在本地进程上使用它的唯一方法。我希望能够在探查器中启动我的程序,并跟踪其整个执行过程。
我尝试过使用如何使用visualvm分析应用程序启动中描述的选项,但在两种传输方法(共享内存和服务器)之间,两者对我来说都没有用。VisualVM 似乎与前者没有任何集成,VisualVM 拒绝连接到 或 ,因此后者也不好。我还尝试在我的程序中插入一个简单的读取,以插入执行中的暂停,但在这种情况下,VisualVM 会阻塞直到读取完成,并且不允许在执行开始之前开始分析。我也尝试过查看Eclipse插件,但该网站充满了死链接,当我尝试使用它时,启动器只是崩溃了(这可能不再准确)。NullPointerException
-Xrunjdwp
localhost
127.0.0.1
System.in
来自C,这对我来说似乎不是一项特别困难的任务。我只是错过了什么,还是这真的是一个不可能的请求?我对任何类型的建议都持开放态度,包括使用不同的(也是免费的)分析器,并且我不反对命令行。