Как вы можете отобразить дерево зависимостей Maven для * плагинов * в вашем проекте?


130

Распространенным методом отладки Maven является использование mvn dependency: tree для просмотра графика зависимостей проекта.

Однако в этом списке показаны зависимости проекта, а не дерево зависимостей плагинов для каждого плагина. Есть ли способ сделать это из проекта?


1
Вы пробовали запустить mvn -X ...
khmarbaise

Да, и это полезно для определенных проблем, но не то, о чем я прошу.
Alex Miller

Он содержит зависимости плагина, в противном случае такой возможности нет.
khmarbaise

@khmarbaise правильный. Дерево зависимостей подключаемого модуля доступно в выводе отладки Maven. Я тоже не знаю другого способа получить это. (Если вы превратите это в ответ, я проголосую за него.)
Райан Стюарт,

Ответы:


102

Вывод через mvn -X распечатает информацию косвенно. В настоящее время нет другого способа получить зависимости Maven-Plugin.

Обновление Вы можете использовать следующую команду, чтобы получить список зависимостей плагина ( цель resolve-plugin из плагина зависимостей):

mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:resolve-plugins

Более короткая версия (и указывать версии плагинов - плохая привычка)

mvn dependency:resolve-plugins

14
resolve-plugins не просто выводит дерево зависимостей ... он, кажется, повторно загружает все пакеты. Не идеально.
Reinderien

5
Плагин не учитывает переопределение зависимостей плагина в pom.xml (тег <build><plugins><plugin><dependencies><dependency>)
Амра

использовать последнюю версию плагина: mvn org.apache.maven.plugins: maven-dependency-plugin: 2.10: resolve-plugins
STB Land

По умолчанию maven загружает плагин зависимостей версии 2.something. Лично мне удалось добиться лучших результатов при использовании версии 3.x.
Драгас,

-3

Если вы используете любую IDE, например IDEA IntelliJ или Eclipse:

  • Вы можете добавить этот плагин ниже в свой pom.xml
  • После этого в окне Maven (справа от IDE) вы найдете новый плагин под названием Dependencies
  • Разверните это, и вы увидите цель dependency: tree, дважды щелкните по ней и запустите, вы должны увидеть полное дерево зависимостей

Плагин для добавления в POM:

<build>
    <plugins>
        <plugin>
            <artifactId>maven-dependency-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.