Executing multiple tasks
With just a simple build script, we already learned that we have a couple of default tasks besides our own task that we can execute. To execute multiple tasks we only have to add each task name to the command line. Let's execute our custom task helloWorld
and the built-in task tasks
, as follows:
hello-world $ gradle helloWorld tasks :helloWorld Hello world. :tasks ----------------------------------------------------- All tasks runnable from root project ----------------------------------------------------- Help tasks ---------- dependencies - Displays the dependencies of root project 'hello-world'. help - Displays a help message projects - Displays the sub-projects of root project 'hello-world'. properties - Displays the properties of root project 'hello-world'. tasks - Displays the tasks runnable from root project 'hello-world' (some of the displayed tasks may belong to subprojects). Other tasks ----------- helloWorld To see all tasks and more detail, run with --all. BUILD SUCCESSFUL Total time: 1.718 secs
We see the output of both the tasks. First, helloWorld
is executed, followed by tasks
. When executed, we see the task names prepended with a colon (:) and the output on the following lines.
Gradle executes the tasks in the same order as they are defined on the command line. Gradle will execute a task only once during the build. So even if we define the same task multiple times, it will be executed only once. This rule also applies when tasks have dependencies on other tasks. Gradle will optimize the task execution for us, and we don't have to worry about that.