2012-05-21 54 views
1

我試圖在gradle中的多個子項目之間共享一個messages.properties(的每種語言),其中一個是戰爭,其餘的是罐子。我的目錄結構是這樣的:如何從gradle中的父項目中複製屬性

Top Level Project 
    + Project War/ 
    + Project Jar/ 
    + Project Jar/ 
    ... 
    + common/resources/properties files 
    + build.gradle 

我試圖做的主要項目級的build.gradle這樣的事情(不看是爲我工作):

task copyProperties(type: Copy) { 
    description = 'Copies the messages.properties to individual projects.' 
    from relativePath('./common/resources') 
    into output.resourceDir 
    include '*.properties' 
} 

我從一個子項目的compileJava.dependsOn調用這個,我沒有看到任何錯誤,但副本不會發生。

+0

你得到了什麼gradle輸出?是爲每個子項目調用copyProperties任務還是隻調用一次? –

回答

1

您可以將這樣的複製任務注入到每個子項目中。不要將'from'指定爲相對路徑,而應將其作爲$ rootDir的基礎。

然後在構建每個子項目時根據需要調用每個副本任務。

+0

謝謝!我也變成了「進入(sourceSets.main.output.resourcesDir)」,這工作! –

相關問題