Можно ли увидеть фактическое выполнение pom.xml, включая родительские зависимости / плагины? - PullRequest
1 голос
/ 24 октября 2019

Мне нужно извлечь проект из репозитория, который использует несколько уровней родительских проектов. Каждый родительский проект добавляет некоторые зависимости или плагины или свойства. Это становится кошмаром, так как я больше не могу строить проект, как только я вручную добавил части из родительских проектов. Есть ли способ создать список всех зависимостей / плагинов / свойств, которые связаны одним pom.xml, чтобы я мог создать портативный, единственный проект Maven? Спасибо

Ответы [ 2 ]

2 голосов
/ 24 октября 2019

Вы можете создать эффективный pom (https://maven.apache.org/plugins/maven-help-plugin/effective-pom-mojo.html), который является своего рода слиянием со всеми родительскими POM.

Это полезно для понимания полного списка и конфигурации плагинов.

Поможет ли это вам создать «портативный» проект Maven, я не знаю. Без соответствующих репозиториев Maven со всеми плагинами, зависимостями и т. Д. Maven не будет собираться.

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

Базовой концепцией Maven является CoC (Соглашение о конфигурации). У Maven есть SuperPOM, и все модели унаследованы от этого. SuperPOM находится в банке Maven-Model-Builder. Вот источник https://maven.apache.org/ref/3.6.2/maven-model-builder/super-pom.html

Каждая цель Maven использует объединенную модель, называемую эффективный pom. Плагин справки имеет цель эффективной помпы, которая отображает полную модель, включая родительскую модель (ы) и SuperPOM.

Таким образом, ответ просто выполняется: mvn help:effective-pom команда для просмотра фактической модели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...