Maven Release без нажатия на Nexus (он же центральный Maven) - PullRequest
2 голосов
/ 03 октября 2019

У меня есть Java-приложение, с которым я хочу следовать типичному циклу выпуска Maven, но я не хочу или не хочу перенести приложение на Nexus (или Maven Central).

Когда яrun

mvn release:prepare release:perform -Darguments="-DskipTests=true -Dmaven.javadoc.skip=true"

На этапе выполнения возникает ошибка, в которой говорится, что в файле pom.xml отсутствуют определения <distributionManagement>, необходимые для передачи встроенных артефактов в NEXUS (наше внутреннее хранилище maven).

Я использую git, и когда я использую git log, я вижу, что все остальные шаги, которые я хотел выполнить, были выполнены правильно.

  • Файл pom.xml былизменен с 1.2-SNAPSHOT на 1.2, и была выполнена фиксация, и был создан тег git для пометки этого выпуска.
  • Затем файл pom.xml был изменен на 1.3-SNAPSHOT, чтобы подготовить ветку git для использования. для дальнейшего развития.

Итак ... все выглядит хорошо. Все, что я хочу сделать, это сказать maven, чтобы он не пытался выполнить push, чтобы команда завершилась без ошибки. ПРИМЕЧАНИЕ: пара файлов из release:prepare осталась, один был release.properties, но я могу смириться с ручным удалением этого при необходимости.

Вот некоторые решения, которые я ищу:

  • Вы не можетесделайте это.
  • Просто снимите release:perform и только запустите release:prepare. Сейчас я проверяю это.
  • Добавьте флаг -DmavenReleasePluginDontPushToNexus = true. Я придумываю это, но мне интересно, есть ли флаг.

Я искал решения для всего вышеперечисленного и пока не нашел ответа.

Поискрешение

плагин релиза Maven

Поиск переполнения стека

Я предполагаю, что об этом уже спрашивали и отвечали, но пока я не могу его найти.

1 Ответ

1 голос
/ 03 октября 2019

Подтверждаю, фаза выпуска: подготовки будет:

  • Убедитесь, что в рабочей области нет незафиксированных изменений.
  • Запрашивает у пользователя нужный тег, выпуск и разработкуимена версий.
  • Изменение и фиксация информации о выпуске в файле pom.xml.
  • Пометка всего исходного дерева проекта новым именем тэга.

ЕдинственноеПропущенный шаг из release:perform, который может вам понадобиться, - это приращение версии к следующему SNAPSHOT, преобразование версии выпуска в новый снимок для подготовки к следующему пакету работ.
Использование version:set потребуется .

...