如何在gradle中打印任务名称?

viq*_*viq 7 groovy gradle

我有一个关于gradle的问题.我是这个构建系统的新手,想知道如何打印任务名称或将其保存在变量中.

像这样的东西:

> gradle someTask

someTask
Run Code Online (Sandbox Code Playgroud)

我认为代码是这样的

task someTask {
   print ($arg[0])
}
Run Code Online (Sandbox Code Playgroud)

但事实并非如此.

谢谢!

tim*_*tes 17

不确定它是否是您想要的,但是您可以通过访问project.gradle对象来获取在调用Gradle时使用的taskNames .

即:给出以下内容 build.gradle

task someTask << {
    println project.gradle.startParameter.taskNames
}
Run Code Online (Sandbox Code Playgroud)

然后运行:

gradle someTask someTask
Run Code Online (Sandbox Code Playgroud)

给出输出:

:someTask
[someTask, someTask]

BUILD SUCCESSFUL

Total time: 4.34 secs
Run Code Online (Sandbox Code Playgroud)

  • @VitaliQ 仅供参考,要在任务闭包中获取当前正在运行的任务的名称,您可以使用 `${it.name}` (2认同)