Как в Eclipse можно определить все связи между классами?
==========================================================

 Всем доброго времени суток!  
  

Возникла необходимость в поддержке большого стороннего проекта. Проект имеет просто ужасную структуру. И сейчас есть проблема с определением взаимосвязи нескольких классов.  
  

Соответственно вся необходимая информация в Eclipse есть в иерархии вызовов (Call Hierarchy), но проект слишком большой и работать с этим неудобно. Поэтому возникает вопрос, возможно ли в иерархии вызовов отображать не все ветви, а только те, которые связаны с необходимым классом?  
  
  

Хотя еще лучше бы сразу найти все методы и поля класса A, которые вызывает класс B (т.е. связи нужны только в одну сторону), при этом учитываться должны все ветви, в т.ч. и через другие классы, а не обращения напрямую.  
  
  

Может есть какие-то сторонние утилиты или плагины? 

 Если я правильно понял проблему, то могу посоветовать подход, который использую для построения «Модели классов» через UML. Используем UML редактор Enterprise Architect. Создаем в нем модель классов, далее импортируем в нее файлы проекта (поддерживает популярные языки программирования). Далее уже разбираемся с моделью.   

  

Кстати, EA устанавливает синхронизацию с кодом, так что можно проектировать код через модель.   

  

Надеюсь я Вам помог.