Ответ 1
Похоже, что администраторы промежуточного программного обеспечения настроили ваш удаленный экземпляр репо (Nexus или Artifactory или что-то еще), чтобы не допускать перераспределения артефактов, и, как поясняет @khmarbaise, для этого есть веские причины. Nexus может быть сконфигурирован так, чтобы разрешить удаление артефактов пользователями в определенной роли или с привилегиями удаления артефактов. Если ваши администраторы настроены таким образом, возможно, вы можете запросить привилегию удаления и удалить повреждающие артефакты. Или, возможно, администратор Nexus согласится сделать это за вас.
Если ни одно из них не возможно, вот некоторые вещи, которые можно попытаться предотвратить в будущем:
- Если вы используете плагин
release
, сначала выполните сухой запуск (-DdryRun=true
в выпуске: подготовьте командную строку). Maven должен сообщать о любых ошибках, не передавая SCM. - Сначала попробуйте запустить
mvn install
в своей группе проектов. Это установит артефакты в локальное репо, а не на удаленный. Если есть проблема, вы можете ударить артефакты из своего локального репо и начать с нуля, повторяя, пока не получите полную сборку. - Если вы используете многомодульную сборку, есть параметры командной строки, которые позволяют возобновить сборку Maven из определенного проекта вперед.
- Определите
-Dmaven.deploy.skip=true
в командной строке Maven. Это похоже на предложение №2, за исключением того, что Maven фактически загрузит и настроит развернуть плагин, он просто не выполнит фактическое развертывание на удаленном Сделки рЕПО. Как только все будет работать, удалите свойство пропуска.