我是否必须为我的所有gradle任务明确提供输入和输出?

时间:2014-05-06 07:36:23

标签: gradle

我正在编写一个自定义gradle构建脚本,并注意到我正在为我的所有任务放置输入和输出定义。

预定义任务是否必要,或者他们“了解”其后果和依赖关系?例如,输入/输出是否必要?:

task compileGradleWrapperDependencies(type: GroovyCompile){
    source = fileTree("buildSrc/src/main/groovy") {
        include "com/example/plugins/dsl/SomeFile.groovy"
        include "com/example/plugins/dsl/OtherFile.groovy"
    }
    destinationDir = "$buildDir/tempBuildSrcCompiled"
    classpath = ...
    ...
    inputs.files fileTree("buildSrc/src/main/groovy") {
        include "com/example/plugins/dsl/SomeFile.groovy"
        include "com/example/plugins/dsl/OtherFile.groovy"
    }
    outputs.files "$buildDir/tempBuildSrcCompiled"
}

1 个答案:

答案 0 :(得分:2)

Gradle附带的任务类已经定义了它们的输入和输出(有意义的地方)。声明上面的输入和输出是多余的(您可以轻松验证自己)。