Попробуйте makefile2graph от того же автора, есть аналогичный инструмент MakeGraphDependencies , написанный на java
вместо c
.
make -Bnd | make2graph | dot -Tsvg -o out.svg
Затем используйте какой-нибудь редактор векторной графики, чтобы выделить нужные вам соединения.
Нет, OpenJDK этого не делает. У каждого из них есть свойство vendor для идентификации.
Само значение хранится внутри JAR-файлов, например, как часть манифеста (см. документацию Oracle, например). Поскольку JAR-файлы подписаны, а API обычно запрещает изменять системное свойство, мало что можно сделать для изменения версии.
Дальнейшее чтение:
Если ваше приложение ищет или Oracle Java, думали ли вы, что это может быть по какой-то причине? что версия java действительно не имеет значения, вы можете написать интерфейс сценария для своей java и заставить его имитировать Java java при запросе версии. Но я совершенно уверен, что версия не будет единственным, что ваше приложение будет проверять и вы обнаружите, что пишете очень-очень сложный сценарий для фильтрации множества разных вещей. Это идея, но я лично не предлагаю ее реализовывать.