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

Как различать развертывание релизов и моментальных снимков

Возможно, я пропустил что-то очень очевидное, но мне нужно какое-то разъяснение. Я собираюсь начать разработку с помощью maven и archiva. Я добавил оба сервера + настройки в теги settings.xml и distributionManagement на maven mOM, который я хочу развернуть.

Я помещаю ссылки на мое внутреннее реплики моментального снимка и свое внутреннее репо-репозиционирование в POM. существует ли определенная команда или параметр maven, который указывает на развертывание как SNAPSHOT, а НЕ для обоих репозиториев? Или, если я развернусь, будет ли он автоматически нажимать одну копию на каждое репо?

Может ли кто-нибудь прояснить это?

4b9b3361

Ответ 1

Если ваш project.version содержит SNAPSHOT (f.e., 1.2-SNAPSHOT), и вы выполняете mvn deploy, артефакты будут развернуты в ваш репозиторий снимков. Если это не так (f.e., 1.2) - они будут развернуты в вашем репозитории выпуска.

Ответ 2

Вы можете выполнить mvn deploy.

Если ваша версия POM содержит SNAPSHOT как суффикс, она будет развернута в репозиторий, настроенный в distributionManagement.snapshotRepository.

Если ваш POM не содержит суффикса SNAPSHOT, он будет развернут в репозиторий, настроенный в distributionManagement.repository.

Однако я рекомендую использовать maven-release-plugin для управления версиями и развертыванием. Запустив mvn -B release:clean release:prepare release:perform, в резюме:

  • суффикс SNAPSHOT удаляется из версии (например, 2.1-SNAPSHOT2.1);
  • приложение построено таким образом, чтобы генерировать JAR файлы;
  • код привязан к вашему репозиторию кода (например, git) и помечен тегом (например, 2.1);
  • JAR развертывается в вашем репозитории выпуска (не репликации моментального снимка);
  • версия увеличивается и добавляется суффикс SNAPSHOT (например, 2.2-SNAPSHOT).