"刷新所有Gradle项目"有什么作用?

Mik*_*ler 5 android intellij-idea gradle

我正在尝试创建一个gradle插件,在Gradle面板上的"Refresh all Gradle projects"按钮时生成一些源.我假设IntelliJ正在执行一些Gradle目标,但我找不到任何文档来确定执行哪个目标.

这是一个Android项目,我听说它建议使用project.preBuild.dependsOn task,但我每次刷新时都无法工作(它只能在第一次工作).

刷新所有Gradle项目

mca*_*lin 1

如果查看 Intellij IDEA 的文档,网址为https://www.jetbrains.com/idea/help/synchronizing-changes-in-gradle-project-and-intellij-idea-project.html

单击 gradle 工具窗口中的刷新按钮将执行以下操作:

按下此按钮后,IntelliJ IDEA 会解析项目结构,并在 Gradle 工具窗口中显示检测到的差异(如果有)。

它本质上会根据 gradle 中的任何更改刷新项目结构。可能很难找到它正在调用的特定任务,因为它在幕后使用 Gradle Tooling API ( https://docs.gradle.org/current/userguide/embedding.html ) 来执行所有任务并获取有关的信息每个项目。