Встречается на собеседованиях • сегодня

Что такое проблема зависимостей в теневых JAR

Проблема зависимостей в теневых JAR (fat JAR) возникает, когда библиотеки, объединённые в один JAR, конфликтуют из-за дублирования классов или несовместимых версий. Это может привести к `NoSuchMethodError`, `ClassNotFoundException` или другим ошибкам во время выполнения. Пример конфликта: ```java // Библиотека A v1.0 содержит класс: public class Utils { public static void foo() {} } // Библиотека B v2.0 изменяет класс: public class Utils { public static void foo() {} public static void bar() {} // Новый метод } ``` Если обе версии попадут в fat JAR, JVM загрузит только одну (обычно первую из classpath), что вызовет ошибки при вызове `bar()`. **Решение:** - Использовать `maven-shade-plugin` с трансформацией (переименование пакетов). - Анализировать дерево зависимостей (`mvn dependency:tree`). - Исключать дубликаты через `` в `pom.xml`.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы