。 。我們正在遷移到Rational Team Concert(RTC)並希望利用其「組件」定義。在本地SCM的工作區,其是平坦的,它的物理根不是在SCM,像這樣在流結果使用的部件:如何爲沒有物理根的平面項目設置Gradle設置
|- workspace-name
| component1
| component2
<empty>
文件中的源代碼僅在組件文件夾存在,workspace-name
僅僅是一個文件系統父所以除非在構建時將代碼複製到那裏,否則它不包含構建文件或代碼。
我發現了很多很好的問題和答案,例如flat project layouts,generic component layout和excellent primer關於Gradle如何工作的邏輯與物理佈局。這些仍然沒有解決我的困惑。
什麼我試圖做的是:
|- workspace-name
| component1
| component2
| buildSrc
我有這樣的buildSrc/settings.gradle
:
includeFlat '../component1/compa','../component2'
馬上蝙蝠它給了我,我的自定義任務(定義的錯誤在buildSrc\src\main\groovy\CustomTask.groovy
)不存在(could not find property 'CustomTask' on project ':component1/compa'
)。
我相信這是因爲buildSrc
應在的projectroot目錄本身(如暗示的gradle docs),例如:
|- workspace-name
| component1
| component2
| buildSrc
這使我想,也許我需要成爲既啞分量邏輯父代以及buildSrc父代。
我的問題是,如果我沒有物理根,什麼是「最好」的地方把我的settings.gradle
文件?每個組件都需要自定義任務的代碼來構建,所以我也在尋找最好的地方(如果不在虛擬組件中)。謝謝!
安迪
感謝您的反饋。我有點擔心必須將構建腳本複製到不同的地方。 – AndyJ