проблемы, которая относится к основным понятиям Maven:морозильных транзитивные зависимости по выпуску Maven, чтобы получить построить полностью воспроизводимые
После освобождения я хотел бы иметь гарантию того, что сборка проекта является полностью воспроизводимой. Поэтому все зависимости проекта и плагина, в том числе переходные, должны всегда решаться одинаково.
К сожалению, это не так, если зависимости выражаются в терминах диапазонов версий. Может случиться так, что даже если заданы прямые зависимости проекта (с использованием versions:use-releases), транзитивные зависимости все же могут быть решены каким-то другим способом в будущем.
Как решить проблему? Есть ли известное решение?
Я думал (просто идея) о создании плагина, который в момент выпуска удалял бы все зависимости проекта к отдельному файлу, а затем, когда он строился в будущем, зависимости, считанные из файла, приоритет над стандартным способом использования maven для разрешения зависимостей. Но я боюсь, что для этого нет плагина api. Так что это потребует некоторого взлома, которого я бы хотел избежать. Есть ли другой способ?
Спасибо, Лукаш
Тот же вопрос, что и я, к khmarbaise: Как легко идентифицировать такие «опасные» зависимости? dependency: tree показывает зависимости после того, как диапазоны уже разрешены. –