2015-04-21 2 views
5

Я видел много болтовней относительно установки параметра env maven.multiModuleProjectDirectory, как в SO, так и в списках рассылки Maven, но у меня возникли проблемы с пониманием того, для чего этот параметр используется/используется.Для чего используется maven.multiModuleProjectDirectory?

Я искал сайты google, maven, docs и т. Д., Но не может найти ссылку, которая фактически объясняет, для чего этот параметр, или как использовать его.

Может ли кто-либо объяснить его цель и/или указать мне на документацию? В какой версии maven было введено?

ответ

6

Переменная окружения была введена в Maven 3.3.1, которая доступна из сценария mvn или mvn.cmd. Цель состоит в том, чтобы найти начало структуры с несколькими модулями, где можно найти местоположение .mvn.

Это было введено, чтобы сделать конфигурацию внутри проекта возможной, а не извне.

Посмотрите на Maven 3.3.1 release notes.

+1

Спасибо. Я прочитал полные примечания к выпуску 3.3.1, но он ничего не упоминал о varMultuleProjectDirectory var. Итак, если я это правильно понял, задав параметры в папке .mvn, если бы я пытался самостоятельно создать подмодуль (а не из корня), я бы указал этот var таким образом, чтобы maven мог найти мой. .mvn 'в моем дереве. Однако, если я запускаю maven из корня проекта, этот var больше не понадобится. Верный? –

+1

Построение подмодуля выполняется с помощью 'mvn -pl ...', который ничего не меняет. Помимо этого нет, вам не нужно указывать это, потому что он обрабатывается внутри сценариев, и именно по этой причине это не упоминается в примечаниях к выпуску, потому что вам обычно не нужно беспокоиться об этом. Это необходимо, потому что внутренне используется для поиска корневой папки для сборки нескольких модулей. – khmarbaise

+2

Действительно, я могу использовать 'mvn -pl ...', но есть также возможность запускать 'mvn' непосредственно в подкаталоге модуля, а не из многомодульного корня. Или это считается плохой практикой в ​​многомодульной сборке? –

Смежные вопросы