Инструменты для анализа исходного кода Java - PullRequest
1 голос
/ 10 февраля 2012

Для студенческого проекта мне нужно расширить Java-проект. Проблема в том, что этот проект не имеет много комментариев, и его сложно проанализировать. Я ищу что-то, чтобы сгенерировать диаграмму классов и, если возможно, диаграмму последовательности.

Я уже пробовал umbrello (но есть некоторые ошибки с большими классами) и agilej, но в проекте много пакетов и подпакетов, и я не нашел, как создать диаграмму рекурсивно.

Есть ли другие инструменты для этого?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 07 марта 2013

В Eclipse у вас есть возможность установить представление пакета на Плоское или Иерархическое.В плоском режиме вы видите полное имя каждого пакета в папке src /, а в иерархическом режиме вы должны развернуть, чтобы увидеть src / com / mypackage и т. Д. В AgileJ, когда вы находитесь в плоском режиме (режим по умолчанию дляEclipse) затем, что бы вы ни перетаскивали из проводника пакетов, будь то проект, папка, библиотека, исходный файл Java, класс или что-то еще, оно будет проходить вниз через дерево владения и добавлять найденные классы так, как вы этого ожидаете.

Аномалия, которую вы описываете в своем вопросе - не повторяется через подпакеты - возникает, когда у вас есть проводник пакетов в режиме иерархии.В этом случае происходит то, что диаграмма классов просто получает уведомление о отбрасывании пакета, но не может узнать режим представления пакета в проводнике пакетов или даже если перетаскивание происходит из проводника пакетов.

Так что, если вы действительно хотите пройтись по иерархии пакетов и по какой-то причине не хотите многократно выбирать их с помощью проводника пакетов в плоском режиме, тогда проще всего перейти наВ перспективе Resource и в представлении Navigator найдите папку, которая является родительской для всех пакетов, которые вы хотите включить, затем перетащите ее на диаграмму классов.Это приведет к рекурсивному поиску классов в подпакетах.

Обратите внимание, что если вы перетаскиваете достаточно большое количество классов (точный порог настраивается), тогда будет предложено отфильтровать их.- Например, вы можете отфильтровать модульные тесты или сгенерированные классы.Если вы попытаетесь добавить действительно большое количество классов (опять же, это настраивается, но по умолчанию это 200), то вы будете заблокированы - но какой смысл в диаграмме одного класса с 200 классами на нем, это будетприводить только к нечитаемой диаграмме классов.

0 голосов
/ 10 февраля 2012

Другой плагин eclipse называется «metrics», который вы можете найти в sourceforge.Он может предоставить кучу информации о проекте Java как в текстовой, так и в графической форме.

...