2014-09-23 72 views
0

我正在通過一些簡單的Gradle示例,並試圖讓我的頭在語法。根據Gradle語法,在'sourceSets'(它是一個SourceSetContainer)的某處必須有一個名爲'main'的方法,它需要一個Closure。我想通過瀏覽Gradle javadoc可以找到它,但我找不到它。有人能指出我在這個例子中'main'的定義嗎?'sourceSets'的'main'方法在哪裏定義?

apply plugin: 'java' 

sourceSets { 
    main { 
     java { 
      srcDirs = ['src'] 
     } 
    } 
} 

回答

2

sourceSets命名源集的容器。 java插件將名爲main(和另一個名爲test)的源集添加到該容器。因此,沒有稱爲main的物理方法或財產。 sourceSets.main { ... }也可以寫成sourceSets.getByName("main") { ... }

+0

謝謝!這表明我朝着正確的方向前進。我查找了NamedDomainObjectCollection(SourceSetContainer繼承)的文檔。我混亂的根源是我不知道可以動態地將方法添加到對象中,但是[NamedDomainObjectCollection]的文檔(http://www.gradle.org/docs/current/javadoc/org/gradle/api/ NamedDomainObjectCollection.html)另有說法。 – markdb314 2014-09-23 02:30:14

相關問題