0
一個單獨的目錄在我們的建設,我們這些「組件」目錄。子項目使用不同的組件組件,並且這些組件的內容必須複製到構建目錄中。因此,假設每個子項目定義包含的組件列表如下:project.ext.components = ['aaa', 'bbb', 'ccc']
。這些存在於一個目錄(從項目的根目錄),如components/aaa
,components/bbb
,等等。我想每個目錄的複製內容到項目的build
目錄。複製的目錄內容的數組使用搖籃
基本上,如果我有這個轉換爲UNIX,我會做一個系列一樣的副本:
cp -R components/aaa/* build/
cp -R components/bbb/* build/
cp -R components/ccc/* build/
什麼是做到這一點的好辦法?
我可以在任務中循環使用project.ext.components
並使用copy
閉包,但我將如何定義任務輸入/輸出?該任務不會是Copy
類型的任務,而只是一個具有doFirst
的常規任務,在該循環中以及在copy
關閉中,因此我們不會像我們在Copy
那樣獲得爲我們定義的輸入/輸出。任務。
我在Copy DSL看到有一個includes
屬性看起來很有前途,但我無法真正想出一個方法來讓它工作。
感謝。這解決了原來的問題。但我確實有一個後續......如果我想保留路徑的「組件」部分,該怎麼辦?換句話說,在複製後,我希望有一個'build/components/aaa'目錄。 – Depressio
'into buildDir; components.each {name - > into(「components/$ name」){from「components/$ name」}}'。 –
啊,有道理。不知道「進入」可能是一個封閉。謝謝! – Depressio