2014-02-21 61 views
5

我想從SRC排除從文件樹中的文件搖籃

FileCollection files = 
project.fileTree(/src/).minus(project.fileTree(/src\main/)).minus(project.fileTree(/src\test/)) 

,如何排除這個目錄,而雙減使用排除的src \主SRC \測試文件?

回答

7

FileTree排除子目錄中的慣用方法是:

def files = fileTree("src").matching { 
    exclude "main", "test" // relative to the file tree's root directory 
} 

PS:與其.minus,您可以使用-

+0

我在徘徊可以在FilerTree或類似的東西上傳遞ArrayList [「src/main」,「src/test」]? – Xelian

+1

如果您有多個根,您需要創建多個文件樹並將它們與'+'結合。對於任務或擴展的用戶,如果任務/擴展接受代表根目錄的「對象」(或「列表」')並在內部轉換爲FileTree,則可以更方便。有關API的詳細信息,請參閱[Gradle Build Language Reference](http://gradle.org/docs/current/dsl/index.html)(例如'Project#fileTree')和Javadoc/Groovydoc。 –