2011-01-06 3 views

Antwort

2

In Gradle 0.9.1 den einzigen Plugin Krieg fügt ein einzelnes Verzeichnis, das im Convention-Objekt definiert ist und nicht Teil eines Source-Sets ist.

So ist die ursprüngliche Aufgabe, die Sie geschrieben könnten diese erweitert werden:

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() } 
} 
6

In gradle 2.1, es in etwa so aussehen werde (man denke dies auch 1,0 bis Gradle gilt)

How I figured this out

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

Nizza, sollte Ihr die akzeptierte Antwort sein. – topr

+1

Ich habe es ein bisschen in einen solchen Einzeiler (den Körper der Aufgabe) geändert: 'sourceSets * .allSource.srcDirs.flatten() *. Mkdirs()' – topr

Verwandte Themen