我有我的安裝過程分爲三個階段:gradle:unsorted dependsOn任務,如何處理?
1)下載 2)解壓縮 3)配置
下載,使用ant.get和ant.checksum,所以我建立我自己的DownloadTask課,那麼在構建:
task download (type: DownloadTask) {
url = url
checksumAlgorithm = 'MD5'
destFile = zipFile
}
所以我帶着4項任務:
task download {...}
task unzip {...}
task configure {..}
task install(dependsOn: [download, unzip, configure]) {}
但我注意到依賴不尊重排序順序,http://issues.gradle.org/browse/GRADLE-427
所以..這裏的解決方法是怎麼樣的?
我不能將這個任務作爲方法移動,因爲下載它使用我的DownloadTask類。我可以將所有方法(甚至是DownloadTask)都移動,但似乎並不是這裏最好的解決方案。
謝謝
我可能是錯的(因此評論),但不能'configure' dependOn了'unzip'任務,而'unzip'任務dependOn'download'。那麼'install'可能僅僅依賴於'configure'? – 2011-06-07 14:54:07
@tim:這是一個很好的解決方案,但問題比這個例子更復雜(我在多項目環境中工作,所以我需要重用一些此任務,例如) – Hugo 2011-06-07 16:43:20