Как я могу найти POM, который запрашивает отсутствующий POM? - PullRequest
11 голосов
/ 27 апреля 2011

Когда я строю свой проект, я получаю следующие предупреждения:

[INFO] ------------------------------------------------------------------------
[INFO] Building XXX
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for org.eclipse.update:org.eclipse.update.configurator:jar:3.2.0 is missing, no dependency information available
[WARNING] The POM for org.eclipse.emf:org.eclipse.emf.ecore:jar:2.3.2 is missing, no dependency information available
[WARNING] The POM for com.ibm.icu:com.ibm.icu:jar:3.4.4 is missing, no dependency information available

В моей сборке я перезаписываю версии этих зависимостей, и сама сборка завершается успешно.

Чтосамый быстрый способ исправить предупреждения?

Редактировать: Какой самый быстрый способ найти POM, которые содержат эти версии?

Примечание: у меня 7000 POM в моем локальном репо.

Ответы [ 3 ]

9 голосов
/ 26 мая 2011

попробуйте инструменты анализа из зависимого плагина

особенно mvn dependency:analyze-dep-mgt

3 голосов
/ 07 октября 2013

Несколько вещей, которые могут помочь:

mvn dependency:tree -Dverbose=true может выплевывать неиспользованные дубликаты / версии.Однако в моем случае этого было недостаточно, по какой-то причине в банке нарушителя не было указано [?].Он также не показывает потомков опущенного фляги, что может или не может быть полезным.

ref: http://jira.codehaus.org/browse/MDEP-123

Intellij может перечислить то, что он думает, оскорбляет pom's и пути (откройтеФайл pom.xml, наведите курсор на подчеркнутый «проект»:

intellij dependency list

К сожалению, мне тоже ничего из этого не хватило.

Тогда я заметил, что еслиВы удаляете нарушающий каталог из своего ~ / .m2 / репозитория, он будет загружен снова и в основном пустым. Поэтому я думаю, что иногда это сообщение об ошибке может означать, что «ваш нексус перечисляет версию, которую он на самом деле не имеет для скачивания»Msgstr "Похоже, что по умолчанию maven, если вы запрашиваете, например, commons-logging 1.1.1, попытается загрузить pom для всех известных версий common-logging, тогда, в моем случае, он выложил это предупреждение, но это былодобрый. Фу!

Так что, по правде говоря, ни один из ваших проектов не может указывать на предупреждение о плохой пом (или плохой версии и т. д.), за исключением индекса метаданных nexus.

0 голосов
/ 18 сентября 2012

Вы можете использовать зависимости: дерево, чтобы увидеть, что pom ссылается на тот, который вам не хватает

...