Gradle cookbook为其他插件“创建源和资源目录”

时间:2011-01-06 06:19:25

标签: gradle

我可以在食谱中看到以下内容

task "create-dirs" << {
    sourceSets.all*.java.srcDirs*.each { it.mkdirs() }
    sourceSets.all*.resources.srcDirs*.each { it.mkdirs() }
}

如何为web插件列出相同的内容

2 个答案:

答案 0 :(得分:6)

在gradle 2.1中,它看起来像这样(认为这也适用于gradle 1.0)

How I figured this out

task 'create-dirs' << {
    sourceSets.all { set ->
        set.allSource.srcDirs.each {it.mkdirs()}
    }
}

答案 1 :(得分:2)

在Gradle 0.9.1中,war插件只添加一个目录,该目录在约定对象中定义,而不是源集的一部分。

因此,您发布的原始任务可以扩展为:

apply plugin: 'java'
apply plugin: 'war'

task "create-dirs" << {
   webAppDir.mkdirs()
   sourceSets.all*.java.srcDirs*.each { it.mkdirs() }
   sourceSets.all*.resources.srcDirs*.each { it.mkdirs() }
}