2015-01-07 37 views
1

在關於Groovy的基本部分的gradle documentation,我們有一個例子:什麼`配置。 <config>`允許迭代?

configurations.runtime.each { File f -> println f } 

什麼代碼應該打印?我寫這個簡單的腳本生成腳本:

apply plugin: 'java' 

configurations.runtime.each { File f -> println f } 

dependencies{ 
    project(':api') //This's just a project declared in the settings.gradle 
} 

gradle check所做的是什麼都不打印。這實際上是什麼意思?

回答

1

一般來說,這會遍歷解決了指定配置的所有文件。在你的情況下,這個配置是runtime。由於您沒有聲明任何運行時依賴關係,因此不會打印文件。 Vahid是正確的,你應該把這種語句放到一個任務中,否則它將在每個構建調用的階梯配置時調用,即使只是通過「gradle任務」詢問可用任務。

1

你應該覆蓋gradle這個檢查方法:

check << { 
    configurations.runtime.each { File f -> println f } 
} 

然後運行

gradle check 
+0

打印將始終運行(不管任務),但沒有什麼需要重複打印。只添加'println「hello」',你會在技術上看到 – cfrick

+1

,你不會「覆蓋」檢查任務,而是向它添加一個動作。檢查任務是一個「生命週期」任務,默認情況下沒有任何操作 –

相關問題