2017-03-10 39 views

回答

1

我相信它不会自动依赖任何东西。如果你只是创建一个空的源集,那就是 - 一组源。但取决于您的使用情况,可能存在隐式依赖性。请看下面的脚本的gradle:

apply plugin: "java" 

sourceSets { 
    integrationTest { 
     java { 
      compileClasspath += main.output 
      runtimeClasspath += main.output 
     } 
    } 
} 

configurations { 
    integrationTestCompile.extendsFrom testCompile 
    integrationTestRuntime.extendsFrom testRuntime 
} 

task integrationTest(type: Test) { 
    testClassesDir = project.sourceSets.integrationTest.output.classesDir 
    classpath = project.sourceSets.integrationTest.runtimeClasspath 
} 

因为integrationTest源集涉及main Java源代码集,gradle这个上自动创建compileJava(和processResources)的依赖。

所以答案是“这取决于”(双关语不打算)。根据您如何定义源集和配置,可能存在隐式依赖关系。但是,如果您未定义两个源集之间的任何关系,则没有理由自动创建任何依赖关系。


这是一个不错的gradle plugin for generating task graphs如果你想探索更多。

相关问题