TGViewer
Чашечка Java Чашечка Java @a_cup_of_java · 8.37K subscribers
Post #8670 256
Чашечка Java Maven разрешает зависимости: app → client → core:1.4 и app → adapter → bridge → core:2.0. Обе версии core имеют одинаковые groupId и artifactId; все зависимости — compile, управления версиями нет. Какая версия core попадёт в путь классов приложения?
Развёрнутое пояснение:

1. При построении дерева зависимостей Maven обнаруживает core:1.4 через client: от приложения до этой зависимости два перехода.

2. Через adapter и bridge обнаруживается core:2.0: до неё три перехода.

3. Поскольку groupId и artifactId совпадают, Maven рассматривает эти зависимости как две версии одного артефакта и разрешает конфликт по правилу ближайшей зависимости.

4. Путь до core:1.4 короче, поэтому в путь классов попадает только версия 1.4. Более высокий номер версии не даёт приоритета, а сам конфликт версий обычно не прерывает сборку.

Почему это важно

Задача проверяет разрешение транзитивных зависимостей Maven. При добавлении библиотеки приложение может получить более старую версию общего артефакта, чем ожидает другой компонент. Если ему нужны методы из версии 2.0, во время выполнения возможен NoSuchMethodError. Дерево зависимостей помогает обнаружить такой выбор, а управление версиями — задать согласованную версию явно.
More from @a_cup_of_java
  1. Oct 8, 2026Post #8669
  2. Oct 7, 2026Почему нагрузочный тест в одной JVM может скрыть задержки GC Если генератор запросов работ…
  3. Oct 6, 2026Почему JNI-ссылки могут привести к падению JVM JNI отдаёт нативному коду дескриптор Java-о…
  4. Oct 6, 2026Spring переводит патч-релизы на единый Patch Thursday Регулярные патч-релизы проектов Spri…
  5. Oct 2, 2026JDK 26: измеряем затраты CPU на сборку мусора JDK 26 добавляет MemoryMXBean.getTotalGcCpuT…
  6. Oct 1, 2026Как измерить экономию памяти от компактных заголовков в Java 27 В Java 27 HotSpot по умолч…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →