Запустите maven: install скопирует больше банок в WEB-INF/lib, чем я ожидаю

Затмение Индиго; м2е 1.1.0; Интеграция Maven для WTP 0.15.3; Мавен 3.0.4

В моем веб-проекте есть несколько зависимых проектов в той же рабочей области. Все проекты установлены. Когда я запускаю установку maven, за исключением просмотра всех зависимостей в WEB-INF/lib.

Когда я запускаю плагин maven install или плагин maven war, WEB-INF/lib будет заполнен зависимостями, но их намного больше, чем я ожидал, из представления «Иерархия зависимостей» или «Эффективный POM» файла POM, или из зависимостей Maven в представлении пути к классам, я не могу найти зависимости.

Запуск Maven->обновление проектов не помогает.

Итак, откуда берутся эти зависимости или с чего мне начать отлаживать?

EDIT Раньше в моем проекте было большое дерево зависимостей (более 100 банок), некоторые из них не нужны, поэтому я решил их удалить. Мой проект зависит от общего проекта, в котором есть некоторые ненужные зависимости, я удаляю их из зависимостей POM и запускаю установку maven для всего дерева зависимостей проектов, успех. затем я запускаю maven install в своем проекте, он не должен включать банки, которые я удалил из общего проекта, но, к сожалению, они есть в WEB-INF/lib.


person Mike    schedule 12.10.2012    source источник
comment
Возможно, вам следует добавить список ожидаемых и фактических банок.   -  person rolve    schedule 12.10.2012


Ответы (2)


Если вы хотите узнать, откуда берутся ваши зависимости, запустите:

mvn dependency:tree

из командной строки. Это показывает, как транзитивные зависимости извлекаются из ваших объявленных зависимостей. Вы также можете запустить:

mvn dependency:analyze

чтобы увидеть, можете ли вы удалить любые неиспользуемые зависимости, чтобы уменьшить количество упакованных JAR-файлов.

person Duncan Jones    schedule 12.10.2012
comment
Спасибо за отзыв. Запустите mvn dependency:tree, результат будет таким же, как я видел в представлении Eclipse POM - никаких дополнительных банок. Я хотел бы знать, почему он скопировал дополнительные банки в WEB-INF/lib, которых нет в дереве зависимостей. - person Mike; 12.10.2012

Проблема решена, я удаляю весь проект и импортирую с удаленного компьютера, запускаю maven-install, все работает. До сих пор не знаю, почему это не сработало раньше, даже после того, как я запустил «maven clean install» для всех проектов зависимостей.

person Mike    schedule 12.10.2012