Я хочу отслеживать изменения файла в виде кода, например, объявления полей, методы и так далее в проекте. Также я хочу получить как старые, так и новые версии файлов java при обнаружении модификации.
Для этой цели я знаю, что должен использовать PsiTreeChangeListener, однако мне следует избегать обработки PsiTreeChangeEvent и вместо этого использовать CachedValue и PsiModificationTracker.MODIFICATION_COUNT.
Я уже сделал подобное сообщение:
https://intellij-support.jetbrains.com/hc/en-us/community/posts/360007885220/
Мои вопросы:
Как я могу использовать CachedValue и PsiModificationTracker в Слушателе (инициализация)?
Как проверить, были ли модифицированы файлы?
Возможно, есть лучший способ добиться этого?
Любой примеры кода / фрагменты приветствуются