如何为gradle自定义任务输入指定默认值

时间:2015-02-05 17:04:44

标签: gradle build.gradle

我有一个看起来有点像这样的自定义gradle任务:

task foo(type:FooTask) {
    in file('foo.in')
    out file('foo.out')
}

class FooTask extends DefaultTask {
    @InputFile
    File in

    @OutputFile
    File out

    @TaskAction
    def doTheFoo() {
         // Do stuff with in and write to out
    }
}

这很好,但99%的时候FooTask的输出应写入"$buildDir/foo.out"。我告诉gradle使用约定来减少脚本的大小;如何将其设为默认值,以便我的任务不必定义它?

1 个答案:

答案 0 :(得分:2)

您只需在实例变量或构造函数中设置它。

@InputFile
File in = project.file("${project.buildDir}/foo.out")