如何生成Java调用图,基于Eclipse的解决方案
问题内容:
我想分析和理解某个Java应用程序,并且我认为调用图将非常有用。如何生成一个?我正在使用Eclipse。
问题答案:
获取调用栈
1)如果您可以 调试 应用程序,则只需放置一个断点(双击代码的左边距),然后等待其停止。如果您不在,请转到Debug
Perspective,然后打开Call stack View / Panel。它具有调用堆栈:)
2)如果要在某个地方打印此堆栈跟踪,请使用Exception:
Exception aux = new Exception("I'm here"); // not for throwing!
aux.printStackTrace(); // if you want it in stdout
要么
Exception aux = new Exception("I'm here"); // not for throwing!
StringWriter sw = new StringWriter();
aux.printStackTrace(new PrintWriter(sw));
String result = sw.toString(); // if you want it in a string
获取方法参考
您可以通过右键单击“引用”,“工作区”来获取对方法的所有引用。它将搜索您当前打开的项目中的所有呼叫。非常非常有用。
对应用程序进行性能分析
(感谢那些回答了分析器选项的人)
Eclipse TPTP提供了概要分析:
http://www.eclipse.org/tptp/home/project_info/general/whatisTPTP.php