Моя цель - увидеть дерево зависимостей (например: appcompat, dagger и т. Д.) В конкретном проекте.
Как один IntelliJ:
Ответы:
Изображение в вопросе на самом деле не показывает дерево, а просто плоский список всего, что скомпилировано в приложении.
Вы используете Gradle?
Если это так, вы действительно можете увидеть «дерево», выполнив команду Gradle
Документация Android : просмотр дерева зависимостей
- Выберите « Просмотр» > « Окна инструментов» > « Gradle» (или щелкните значок Gradle на панели окон инструментов).
- Разверните AppName > Tasks > android и дважды щелкните
androidDependencies
. После того, как Gradle выполнит задачу, должно открыться окно «Выполнить», чтобы отобразить результат.
(создает древовидный список)
./gradlew app:dependencies
и / или
(создает плоский список)
./gradlew app:androidDependencies
Где имя app
вашего модуля
И получается что-то вроде этого
+--- MyApp:mylibrary:unspecified
| \--- com.android.support:appcompat-v7:25.3.1
| +--- com.android.support:animated-vector-drawable:25.3.1
| | \--- com.android.support:support-vector-drawable:25.3.1
| | \--- com.android.support:support-v4:25.3.1
| | \--- LOCAL: internal_impl-25.3.1.jar
| +--- com.android.support:support-v4:25.3.1
| | \--- LOCAL: internal_impl-25.3.1.jar
| \--- com.android.support:support-vector-drawable:25.3.1
| \--- com.android.support:support-v4:25.3.1
| \--- LOCAL: internal_impl-25.3.1.jar
\--- com.android.support:appcompat-v7:25.3.1
+--- com.android.support:animated-vector-drawable:25.3.1
| \--- com.android.support:support-vector-drawable:25.3.1
| \--- com.android.support:support-v4:25.3.1
| \--- LOCAL: internal_impl-25.3.1.jar
+--- com.android.support:support-v4:25.3.1
| \--- LOCAL: internal_impl-25.3.1.jar
\--- com.android.support:support-vector-drawable:25.3.1
\--- com.android.support:support-v4:25.3.1
\--- LOCAL: internal_impl-25.3.1.jar
Примечание . Если вы запускаете ls
(или dir
в Windows) в этой папке и не видите gradlew
(или gradlew.bat
), вы находитесь не в той папке.
./gradlew appName:dependencies
. В Android Studio его можно найти в разделе appName > Tasks > help > dependencies
.
androidDependencies
задачи, подобной той, что была в вашем ответе. Результаты представляли собой простой список, похожий на конечный результат поиска зависимостей Gradle. Есть идеи, почему и как получить такое дерево, как в вашем ответе?
app:dependencies
Справа откройте вкладку Gradle> щелкните значок Gradle (выполнить задачу Gradle), во всплывающем диалоговом окне введите:
app:dependencies
в поле командной строки> ок
app:
и просто выполнил dependencies
. Это дает более полезный результат, чем метод в ответе norbDEV, поскольку показывает дерево зависимостей. Возможно тот же результат, ./gradlew dependencies
но без необходимости установки JDK.
app
- это модуль по умолчанию для проектов Android Studio. Если у вас нет модулей или вы хотите увидеть зависимости для всех модулей, да, gradle dependencies
тоже работает
dependencies
На панели «Выполнить» вы найдете дерево зависимостей.
Другой способ:
Откройте панель Gradle
Найдите постфикс "(корень)" и откройте (имя папки приложения)
Откройте узел " Задачи"
Откройте узел Android
Дважды щелкните "androidDependencies"
На панели «Выполнить» вы найдете список зависимостей.
Перед нормальной сборкой вернитесь к нормальной конфигурации сборки (рядом с молотком)
Как узнать, какая зависимость обновляется: https://github.com/ben-manes/gradle-versions-plugin
Применение
Добавьте это на уровень проекта build.gradle
apply plugin: "com.github.ben-manes.versions"
buildscript {
repositories {
jcenter()
}
dependencies {
classpath "com.github.ben-manes:gradle-versions-plugin:0.20.0"
}
}
Синхронизировать сейчас
dependencyUpdates
На панели «Выполнить» вы найдете результат.
Проверьте и визуализируйте каждую зависимость в графе зависимостей вашего проекта, разрешенную Gradle во время синхронизации проекта, выполнив следующие действия:
команда терминала для просмотра списка всех зависимостей
./gradlew -q dependencies app:dependencies --configuration implementation