Вопрос

У меня большой проект с несколькими модулями, и я хочу передать информацию SCM в Maven. Но каждый из модулей и родительский проект имеют выделенную папку в SVN, поэтому кажется, что информация SCM специфична для каждого модуля.

Какое значение мне нужно использовать для элементов подключения и developerConnection?Нужно ли мне настраивать SCM для каждого модуля или его можно настроить один раз в родительском проекте?

Спасибо

Это было полезно?

Решение

Я протестировал два сценария:

  • Определение конфигурации только на уровне родительского объекта;

  • Определение конфигурации как на уровне родительского модуля, так и на уровне подмодуля.

Если вы попробуете создать код для родительского проекта pom, вы получите файл release.properties, который показывает, что maven использовал бы конфигурацию выпуска, если бы он действительно выполнил цель подготовки.

Отсюда вы можете видеть, что при тестировании первого сценария maven не помечает дочерние модули.Вы увидите только одно свойство mvn -DdryRun=true release:prepare. При тестировании второго сценария с конфигурацией scm, выполняемой также на уровне подмодуля, вы получите по одному свойству для каждого подмодуля.

Я пришел к выводу, что для плоской многомодульной структуры проекта вы должны определить scm как на уровне родительского модуля, так и на уровне модуля, каждый из которых указывает на каталог scm, в котором расположен этот модуль.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top