IntelliJ: Более простой способ проверить, включен ли в проект артефакт maven? - PullRequest
0 голосов
/ 19 ноября 2018

В настоящее время я могу использовать функцию «Найти в пути» и ввести имя артефакта (или выполнить поиск в pom.xml), чтобы проверить, есть ли у проекта такая зависимость, но это не работает для транзитивных зависимостей.

Я могу сгенерировать дерево зависимостей в IntelliJ (или в командной строке), но это требует от меня поиска артефакта по всему дереву / списку, что не очень удобно.

Есть ли простое (более свободно) способ проверить это?

Ответы [ 4 ]

0 голосов
/ 19 ноября 2018

Еще пара вариантов:

  • Отображение диаграммы зависимостей (вторичный щелчок в меню проектов Maven, где отображается ваш модуль -> Показать зависимости). Оказавшись под этим видом, вы можете Ctrl-F. Он начинается с показа базовых пакетов

  • Используйте плагин "Maven Helper". После установки откройте файл pom, и теперь вы найдете вкладку «Dependency Analyzer», которая очень похожа на функцию дерева зависимостей в Eclipse

0 голосов
/ 19 ноября 2018

Альтернатива ответу @ vikingsteve, в правой панели, на вкладке проектов Maven, щелкните по открытию записи любого модуля и посмотрите под зависимостями.

Это дает более детализированное дерево зависимостей, особенно впроекты модулей, показывающие, какая зависимость извлекается откуда (включая транзитивные зависимости), а также исключаются зависимости для модуля.

Это (только пример) позволяет мне увидеть, что ядро ​​hibernate 4.3.11.Final создаеттранзитивная зависимость от dom4j 1.6.1 и то, что транзитивная зависимость от нее в hibernate-entitymanager 4.3.11. Из-за этого игнорируется финал.

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

0 голосов
/ 19 ноября 2018
  1. Ctrl + Shift + N (введите название вашего модуля / проекта)
  2. Выберите связанный файл pom
  3. Ctrl + Alt + U (откроется диалоговое окно Mvn Dependency)
  4. В диалоговом окне Ctrl + F (введите зависимость, которую вы хотите найти)

Вы увидите, существует ли желаемая зависимость в этом модуле / проекте и откуда она приходит транзитивно.

0 голосов
/ 19 ноября 2018

Да, просто посмотрите на панель проекта (слева).

enter image description here

Под структурой проекта вы увидите External Libraries - просторазверните этот узел дерева, и вы увидите там все зависимости maven.Они начинаются с Maven: - просто введите для поиска:)

Для правильного анализа (показывая местоположение переходных точек) вы можете запустить mvn dependency:tree из командной строки.

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