# Runtime dependencies in multiproject build propagate as compile time dependencies

**URL:** <https://discuss.gradle.org/t/runtime-dependencies-in-multiproject-build-propagate-as-compile-time-dependencies/4031>\
**Category:** Old Forum Archive\
**Created:** [July 22, 2014, 6:00pm UTC](https://discuss.gradle.org/t/runtime-dependencies-in-multiproject-build-propagate-as-compile-time-dependencies/4031 "2014-07-22T18:00:00Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Igor\_Berman](https://avatars.discourse-cdn.com/v4/letter/i/977dab/32.png) [@Igor\_Berman](https://discuss.gradle.org/u/Igor_Berman)\
**Post date:** [July 22, 2014, 6:00pm UTC](https://discuss.gradle.org/t/runtime-dependencies-in-multiproject-build-propagate-as-compile-time-dependencies/4031/1 "2014-07-22T18:00:00Z")

</div>

Hi,

I’m experiencing rather strange gradle behavior projectA-Service depends on projectA-Dal(compile) projectB depends on projectA-Api(compile) and projectA-Services(runtime) projectC depends on projectB(compile)

I can use projectA-Dal in projectC for some reason(if I print dependencies for projectC projectA-Dal appears in compile time dependencies as well) Is it intended behavior? IMO I would expect that it wont be possible and I’ll get compilation error…

gradle version 1.11

thanks in advance

---

<div class="post-metadata">

**Author:** ![Igor\_Berman1](https://avatars.discourse-cdn.com/v4/letter/i/e5b9ba/32.png) [@Igor\_Berman1](https://discuss.gradle.org/u/Igor_Berman1)\
**Post date:** [July 25, 2014, 4:31pm UTC](https://discuss.gradle.org/t/runtime-dependencies-in-multiproject-build-propagate-as-compile-time-dependencies/4031/2 "2014-07-25T16:31:00Z")

</div>

I’ve found the answer

this is due to default dependency resolution for project dependencies

By default, when you declare dependency to projectA, you actually declare dependency to the ‘default’ configuration of the projectA. If you need to depend on a specific configuration of projectA, use map notation for projects: configurationName project(path: ‘:projectA’, configuration: ‘someOtherConfiguration’)

from [http://www.gradle.org/docs/current/dsl/org.gradle.api.artifacts.dsl.DependencyHandler.html](http://www.gradle.org/docs/current/dsl/org.gradle.api.artifacts.dsl.DependencyHandler.html)
