Причина: нет такого свойства: sourceSets для класса: org.gradle.api.plugins.Convention - PullRequest
0 голосов
/ 08 декабря 2010

я запустил фрагмент кода из Поваренной книги Gradle


apply plugin: 'java'

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

при запуске я получаю следующую ошибку

Cause: No such property: sourceSets for class: org.gradle.api.plugins.Convention

я использую Gradle 0.9-rc-3

Ответы [ 2 ]

2 голосов
/ 14 июля 2014

Свойство все было удалено, поэтому вы можете сделать это следующим образом:

   task "create-dirs" {
        def defaultPackage = "org.akash.gradle";
        ['java', 'groovy', 'resources'].each { String dir ->
           sourceSets*."$dir".srcDirs*.each { dir1 ->
             def newDir = new File(dir1, defaultPackage);
             newDir.mkdirs();
           }
        }
   }
0 голосов
/ 08 декабря 2010

Хорошо, извините. я понял

должно быть

<code> 
apply plugin: 'java'</p>

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