JDeps — это инструмент для анализа зависимостей модулей и пакетов, который был введён в JDK 8, ещё до появления модульной системы JPMS. Основная задача JDeps — помочь разработчикам понять, как модули и пакеты связаны друг с другом внутри проекта.

Основные возможности:

  • Показывает, какие модули используются в проекте, какие зависимости между ними существуют и какие модули вызывают друг друга.
  • Позволяет анализировать, какие библиотеки и классы реально используются, что помогает очищать проект от лишних зависимостей

Пример запуска Jdeps

jdeps --multi-release 17 --ignore-missing-deps -q -recursive --print-module-deps -cp 'project-core/build/lib/boot/*':'project-core/build/lib/main/*':'project-core/build/app/*' project-core/build/app/*
 
Output:
jdk.zipfs,jdk.management,jdk.crypto.cryptoki,java.security.jgss,jdk.crypto.ec
  • --multi-release 17: указывает на использование многоверсионного JAR-файла для JDK 17, что позволяет учитывать разные версии классов для разных версий JDK.
  • --ignore-missing-deps: игнорирует отсутствующие зависимости, чтобы избежать ошибок при их отсутствии.
  • -q: отключает подробный вывод, что делает команду менее «шумной» и оставляет только ключевые данные.
  • -recursive: указывает JDeps анализировать зависимости всех модулей рекурсивно.
  • --print-module-deps: выводит список всех модулей, которые требуются для работы проекта.
  • -cp: указывает путь к классам и библиотекам проекта.

Мета информация

Область:: 00 Java разработка
Родитель::
Источник::
Создана:: 2024-10-15
Автор::

Дополнительные материалы

Дочерние заметки