Существует ли инструмент diff специально для Java, который не просто выделяет различия в файле, но является более сложным?
Под более сложным я подразумеваю, что он потребует 2 входных файла, один и тот же файл класса разных версий и скажет мне такие вещи, как:
- Имена полей изменены
- Добавлены новые методы
- Удаленные методы
- Методы, сигнатуры которых изменились
- Методы, реализации которых изменились (не интересуются более подробной информацией)
Погуглил и ничего подобного не нашел... Я полагаю, что это может быть полезно для определения того, потребуют ли изменения зависимостей перестроения конкретного модуля.
заранее спасибо
Изменить:
Я полагаю, я должен уточнить:
Я не беспокоюсь о графическом интерфейсе для этого инструмента, я заинтересован в том, чтобы его вызывать программно.
А что касается моих рассуждений:
- Чтобы потренироваться, если мне нужно пересобрать определенные модули/компоненты, если их зависимости изменились (что может сэкономить нам около 1 часа на компонент)... Более подробное объяснение, но я не считаю это важным.
- Чтобы их можно было использовать для анализа изменений, внесенных в определенные компоненты, которые мы пытаемся заблокировать и на которые мы полагаемся как на более стабильные, мы пытаемся обеспечить, чтобы сигнатуры методов в конкретном компоненте изменялись очень редко.