Подтвердить что ты не робот

Развертывание Maven: развертывание с использованием -DaltDeploymentRepository

У меня есть проекты maven, и я хочу развернуть свои артефакты во внутреннем репозитории nexus, который настроен на создание снимков и выпусков в двух разных местах. Поэтому я не могу использовать "distributionManagement", поскольку это будет жестко определять местоположение. Поэтому я определил пару в моем settings.xml сказать "releaseRepository" и "snapshotRepository", и каждый из них имеет параметр "release", который должен быть установлен в "true" для выпусков и "false" для моментальных снимков.

Я запускаю свою сборку со следующей командой, чтобы выпустить мои артефакты;

mvn clean deploy -DaltDeploymentRepository=releaseRspository::<DON'T KNOW WHAT GOES HERE SO LEFT IT EMPTY>::htp://abc.com/repositores/my-releases/ -Drelease=true

Теперь, когда я выполняю команду над командой, она терпит неудачу, потому что значение для 'layout' не предоставляется, и я получаю исключение, и сборка завершается с ошибкой.

Я не мог найти никакой информации о том, что должно быть значением для "макета", у меня есть около 10 проектов, которые я хочу построить и освободить друг за другом.

4b9b3361

Ответ 1

altDeploymentRepository String - указывает альтернативный репозиторий, для которого проект артефакты должны быть развернуты (кроме тех, которые указаны в <distributionManagement> ). Формат: id:: layout:: url

(источник)

Итак, в вашем случае: releaseRepository::default::http://your.repo.url (см. здесь для макета)

Ответ 2

"макет" - это устаревший коммутатор, обеспечивающий обратную совместимость с Maven 1, и на данный момент является анахронизмом. Если вы используете Maven 2 или Maven 3 (как я считаю, по крайней мере 99,99% мира должно быть на этом этапе), это действительно "дефолт", как описано здесь в другом месте. Заявив, что ответ однозначно "по умолчанию", вопрос об утилите коммутатора устраняется; если он всегда "по умолчанию", который он все еще существует?

Если вы на самом деле используете Maven 1, это должно быть "наследие", но я надеюсь, что никто не будет. Все это описано в спецификациях Maven:

расположение Либо по умолчанию для макета Maven2, либо устаревшего для макета Maven1. Maven3 также использует макет по умолчанию.

https://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html