当我按下"立即同步"和"刷新"按钮时,IDEA/Android Studio运行了什么Gradle任务?

Nil*_*zor 13 intellij-idea gradle android-studio build.gradle android-gradle-plugin

见下图:

现在Sync(蓝色)和refesh按钮(红色)到底分别做了什么?单击这些时,Idea/Android Studio会发出什么Gradle Tasks和/或其他进程?

我需要用gradle.build文件调试一些错误,并知道这些按钮在这方面对我有什么帮助.

Sco*_*rta 14

这两种行为基本上都是一样的.他们的主要任务是评估Gradle构建文件,以便将Android Studio的项目结构图片与Gradle构建文件中的真实来源同步.它没有执行特定任务来执行此操作,而是评估构建文件,将其执行到实际触发任何任务之前的点.Gradle构建了项目状态的内部模型,并将此模型交给Android Studio,然后Android Studio更新其项目结构的概念以反映任何更改.

在此模型评估过程(再次不调用任何特定任务)之后,Android Studio会执行该generateSources任务.此步骤创建任何自动生成的源文件,例如R.java,它们需要在IDE中为正常开发提供正确的语法突出显示和内容辅助.

事实上,除了进行实际构建之外,Android Studio将执行构建文件,这是您必须要小心了解构建文件中放置的任何自定义代码的执行上下文的原因,尤其是在代码执行时运行或可能具有破坏性的操作 - 代码可能会在您可能没有预料到的情况下运行,比您预期的更频繁.