Какие инструменты доступны для визуализации того, какие методы вызывают другие методы для кода Java? - PullRequest
7 голосов
/ 11 января 2012

Какие инструменты доступны для визуализации того, какие методы вызывают другие методы для кода Java?Например, есть ли что-то вроде CodeDrawer, работающее с Java?В частности, я ищу что-то, что рисовало бы стрелки между Obj.methodA () и Obj.methodB (), если methodA вызывает methodB, и, возможно, организует симпатичную звезду стрелок, указывающих на methodB из методов, которые его вызывают.

Ответы [ 3 ]

4 голосов
/ 12 января 2012

Structure101 , наведите его на свой байт-код, выберите вкладку структуры, перспективу графа вызовов.Вы можете установить глубину отображаемых вызовов (как вызывающих, так и вызываемых), и двойной щелчок по методу приведет к его централизации на ориентированном графике, так что глубина отображаемых вызовов станет относительной.Отображается ориентированный граф, а не простое дерево, так что можно обнаружить несколько маршрутов между методами, например между createDetectors и getShortName в следующем (глубина вызова установлена ​​в 2):

enter image description here

1 голос
/ 11 января 2012

Полагаю, вы можете создавать графы вызовов с помощью doxygen.

0 голосов
/ 11 января 2012

Если вы можете использовать IDE, попробуйте IntelliJ IDEA .Это может дать информацию графа вызывающего абонента в очень чистом виде.

(Netbeans и eclispse будут иметь похожую функцию)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...