【问题标题】:Android Studio: Where are Gradle build tasks defined?Android Studio:Gradle 构建任务在哪里定义?
【发布时间】:2018-07-24 14:15:41
【问题描述】:

我正在尝试了解 gradle 构建的工作原理。当我进行构建时,我看到执行了一堆任务,例如:

app:assembleDebug
app:preBuild
app:packageDebug

我想看看这些任务到底在做什么。我假设这些是 Gradle / Groovy 脚本。我尝试解压缩 Android Studio 下的所有 jar。那里有很多东西,但我没有看到任何相关的东西(我可能在大量列表中遗漏了一些东西)。这些任务是否隐藏在类文件中?我找错地方了吗?

【问题讨论】:

    标签: android-studio gradle android-gradle-plugin build.gradle


    【解决方案1】:

    所有这些任务都是由 Gradle Android 插件创建的,无论是库版本 (com.android.library) 还是应用程序版本 (com.android.application)。您可以在this repository找到这些插件的源代码。

    但是,可能很难深入了解每个任务,因为其中一些可能是由 Android 插件的自定义任务类型实现的,其他可能只是常规配置的 Gradle 任务。此外,任务的配置可能分布在多个文件中,因为其中许多文件可能是动态创建的。

    但是,在我看来,没有必要知道每个任务的确切功能,而是应该专注于 Android 开发和 Gradle 插件的基本概念,例如build types and variants。 Android 插件提供了特定的 DSL,根据指定的配置,它会自动创建任务。

    【讨论】:

    • 我明白你的意思。 “可能很难深入了解每项任务”是轻描淡写的说法。我想我会放弃的。我仍然对盲目相信构建系统“做正确的事情”感到不安,而没有任何关于那是什么的暗示。但我想我必须相信。
    猜你喜欢
    • 2017-01-15
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    • 2011-06-12
    • 2018-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多