android - 通过调试或发布过滤 androidDependency

标签 android gradle android-gradle-plugin

我的应用程序的依赖关系尽可能简单。我只实现支持库。现在我想知道我的应用程序中的依赖关系。

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:26.1.0'
}

./gradlew -q :app:androidDependencies 可以帮助我显示应用程序的依赖项。不过结果有点长。

debug
debugCompileClasspath - Dependencies for compilation
+--- com.android.support:appcompat-v7:26.1.0@aar
+--- com.android.support:animated-vector-drawable:26.1.0@aar
+--- com.android.support:support-vector-drawable:26.1.0@aar
+--- com.android.support:support-v4:26.1.0@aar
+--- com.android.support:support-media-compat:26.1.0@aar
+--- com.android.support:support-fragment:26.1.0@aar
+--- com.android.support:support-core-utils:26.1.0@aar
+--- com.android.support:support-core-ui:26.1.0@aar
+--- com.android.support:support-compat:26.1.0@aar
+--- com.android.support:support-annotations:26.1.0@jar
+--- android.arch.lifecycle:runtime:1.0.0@aar
+--- android.arch.lifecycle:common:1.0.0@jar
\--- android.arch.core:common:1.0.0@jar

debugRuntimeClasspath - Dependencies for runtime/packaging
+--- com.android.support:appcompat-v7:26.1.0@aar
+--- com.android.support:animated-vector-drawable:26.1.0@aar
+--- com.android.support:support-vector-drawable:26.1.0@aar
+--- com.android.support:support-v4:26.1.0@aar
+--- com.android.support:support-media-compat:26.1.0@aar
+--- com.android.support:support-fragment:26.1.0@aar
+--- com.android.support:support-core-utils:26.1.0@aar
+--- com.android.support:support-core-ui:26.1.0@aar
+--- com.android.support:support-compat:26.1.0@aar
+--- com.android.support:support-annotations:26.1.0@jar
+--- android.arch.lifecycle:runtime:1.0.0@aar
+--- android.arch.lifecycle:common:1.0.0@jar
\--- android.arch.core:common:1.0.0@jar

debugAndroidTest
debugAndroidTestCompileClasspath - Dependencies for compilation
+--- com.android.support:appcompat-v7:26.1.0@aar
+--- com.android.support:animated-vector-drawable:26.1.0@aar
+--- com.android.support:support-vector-drawable:26.1.0@aar
+--- com.android.support:support-v4:26.1.0@aar
+--- com.android.support:support-media-compat:26.1.0@aar
+--- com.android.support:support-fragment:26.1.0@aar
+--- com.android.support:support-core-utils:26.1.0@aar
+--- com.android.support:support-core-ui:26.1.0@aar
+--- com.android.support:support-compat:26.1.0@aar
+--- com.android.support:support-annotations:26.1.0@jar
+--- android.arch.lifecycle:runtime:1.0.0@aar
+--- android.arch.lifecycle:common:1.0.0@jar
\--- android.arch.core:common:1.0.0@jar

debugAndroidTestRuntimeClasspath - Dependencies for runtime/packaging

debugUnitTest
debugUnitTestCompileClasspath - Dependencies for compilation
+--- com.android.support:appcompat-v7:26.1.0@aar
+--- com.android.support:animated-vector-drawable:26.1.0@aar
+--- com.android.support:support-vector-drawable:26.1.0@aar
+--- com.android.support:support-v4:26.1.0@aar
+--- com.android.support:support-media-compat:26.1.0@aar
+--- com.android.support:support-fragment:26.1.0@aar
+--- com.android.support:support-core-utils:26.1.0@aar
+--- com.android.support:support-core-ui:26.1.0@aar
+--- com.android.support:support-compat:26.1.0@aar
+--- com.android.support:support-annotations:26.1.0@jar
+--- android.arch.lifecycle:runtime:1.0.0@aar
+--- android.arch.lifecycle:common:1.0.0@jar
\--- android.arch.core:common:1.0.0@jar

如您所见,有所有 productFlavors,例如 debugCompileClasspathdebugRuntimeClasspath 等。我可以添加过滤器以仅显示诸如 debugCompileClasspath 项吗?

最佳答案

从帮助命令 ./gradlew help --task :app:androidDependencies 中,我没有找到任何选项,所以任务 :app:androidDependencies 可能做得不好.

> Task :help
Detailed task information for :app:androidDependencies

Path
     :app:androidDependencies

Type
     DependencyReportTask (com.android.build.gradle.internal.tasks.DependencyReportTask)

Description
     Displays the Android dependencies of the project.

Group
     Android

./gradlewtasks 中,还有另一个类似的任务,名为 app:dependencies。它有一个选项。

> Task :help
Detailed task information for app:dependencies

Path
     :app:dependencies

Type
     DependencyReportTask (org.gradle.api.tasks.diagnostics.DependencyReportTask)

Options
     --configuration     The configuration to generate the report for.

Description
     Displays all dependencies declared in project ':app'.

Group
     help 

然后命令./gradlew -q app:dependencies --configuration debugCompileClasspath 拯救我的眼睛。

关于android - 通过调试或发布过滤 androidDependency,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49006280/

相关文章:

android - Eclipse 在 Android Studio 中导出项目并在 build.gradle 中添加远程依赖

java - Android 序列化 PendingIntent

android - 在 gradle 插件中获取应用程序变体的包名

android - 如何从命令行运行我的应用程序模块?

Android Studio 启用 Java8 支持

android - 根据构建类型通过 Gradle 设置 Android.mk 标志

Android Retrofit - 如何覆盖 baseUrl

android - 代号一个文件选择器对话框

python - 为什么kivy无法导入kivy_clock?

Android 构建仅在 Windows 上失败