# Add a task dependencies from a rule based task to another task

**URL:** <https://discuss.gradle.org/t/add-a-task-dependencies-from-a-rule-based-task-to-another-task/11761>\
**Category:** Help/Discuss\
**Created:** [September 20, 2015, 12:27pm UTC](https://discuss.gradle.org/t/add-a-task-dependencies-from-a-rule-based-task-to-another-task/11761 "2015-09-20T12:27:05Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Markus\_Haas](https://avatars.discourse-cdn.com/v4/letter/m/e79b87/32.png) [@Markus\_Haas](https://discuss.gradle.org/u/Markus_Haas)\
**Post date:** [September 20, 2015, 12:27pm UTC](https://discuss.gradle.org/t/add-a-task-dependencies-from-a-rule-based-task-to-another-task/11761/1 "2015-09-20T12:27:05Z")

</div>

Hello,

I have a multi project with several subprojects. build.gradle defines tasks for the subprojects as well as a rule based task for the root project. The multi project tree looks like following:  
`
root/
build.gradle
settings.gradle
project1/
project2/
project3/
`

build.gradle:  
``

subprojects {  
task (task1) \<\< {  
println “Execute task1 on $[project.name](http://project.name)”  
}

```
    task (task2, dependsOn: 'task1') << {
            println "Execute task2 on $project.name"
    }

    task (task3, dependsOn: 'task2') << {
            println "Execute task3 on $project.name"
    }

```

}

tasks.addRule("Pattern: echo ") { String taskName -\>  
if (taskName.startsWith("echo ")) {

```
task(taskName, type: Exec) {

            def mvnCommand = taskName.split(' ')
            commandLine mvnCommand

    }
}

```

}

Now I am looking for a solution to add a task dependency from the rule based task to task2 of all subprojects, How can I do that? Later on additional subprojects will be added. This should be possible by just editing the file settings.gradle.

---

<div class="post-metadata">

**Author:** ![sterling](https://sea1.discourse-cdn.com/gradle/user_avatar/discuss.gradle.org/sterling/32/5395_2.png) [@sterling](https://discuss.gradle.org/u/sterling)\
**Post date:** [September 21, 2015, 3:18pm UTC](https://discuss.gradle.org/t/add-a-task-dependencies-from-a-rule-based-task-to-another-task/11761/2 "2015-09-21T15:18:50Z")

</div>

Have you tried `dependsOn subprojects.task2`?
