如何使用visualvm配置应用程序启动

pst*_*ton 52 java profiling visualvm

据我所知,您只能使用VisualVM配置正在运行的应用程序.

有没有人知道使用VisualVM分析启动和启动Java应用程序的方法?

我确信必须有办法,否则这将是一次重大的疏忽.

希望我只是误读了文档.

谢谢,p.

Kar*_*rlP 18

使用eclipse启动器,并在main方法的适当位置设置断点.

然后,以调试模式启动,在visualVM中启用分析,然后使用eclipse继续.

这不会分析类加载和东西,但它对我来说已经足够了.


ska*_*man 9

您是否使用`-Xrunjdwp'命令行选项设置分析?如果是这样,该选项有一个"suspend"参数用于此目的:

如果要在加载主类之前立即挂起目标VM,则为True;否则为false.否则是假的.

我自己的配置示例:

-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n
Run Code Online (Sandbox Code Playgroud)

我在YourKit分析器中使用它,但我认为原理是一样的.

  • 那你为什么接受答案,即使它不起作用? (7认同)
  • 然而,其他地方的答案声称`-Xrunjdwp`没有帮助.请参阅http://stackoverflow.com/questions/7096121/profile-entire-java-program-execution-in-visualvm (2认同)

Hai*_*man 9

我发现Startup Profiler很有帮助:

VisualVM 1.3.6的Startup Profiler插件支持从启动时对本地Java 5+应用程序进行检测分析.在分析短期运行的进程时,它也很有用.

  • 这最终为我工作,但请确保您下载单独的VisualVM应用程序,不要尝试重用JDK附带的那个; 由于某种原因,Startup Profiler插件不适用于库存JDK版本. (9认同)