title: Defining multi-module dependency using custom configuration in Gradle does not trigger required tasks
body: <p>I have two modules in my Gradle project:</p>
  
  <ul>
  <li><code>ts</code> containing single page app sources</li>
  <li><code>edge</code> containing Java sources which will serve said SPA</li>
  </ul>
  
  <p>I have managed to integrate Yarn build with Gradle so that executing <code>gradle :ts:assemble</code> will produce single zip file with compiled js files and also including that archive in the final JAR via <code>gradle :edge:processResources</code> using custom configuration that expects zip files. Everything works fine if I just manually invoke <code>gradle :ts:assemble :edge:processResources</code> however if I try <code>gradle :edge:processResources</code> the build will fail immediately with File not found error. Somehow Gradle doesn't know that it should assemble <code>ts</code> project before processing resources of <code>edge</code></p>
  
  <p><strong>ts/build.gradle</strong></p>
  
  <pre><code>configurations {
    create("default")
  }
  
  artifacts {
    add("default", assemble) {
      name = project.name
      version = project.version
      classifier = extension
    }
  }
  
  //Yarn tasks omitted for brevity
  </code></pre>
  
  <p><strong>edge/build.gradle</strong></p>
  
  <pre><code>configurations {
    bundle
  }
  
  dependencies {
    bundle project(":ts")
    //other dependencies
  }
  
  processResources {
    configurations.bundle.files.each { bundle -&gt;
      from zipTree(bundle)
      into "public"
    }
  }
  </code></pre>