在第一節,咱們使用到了gradle -q hello命令行來運行Hello World,並對Hello World進行了簡單的分析,瞭解到 gradle -q hello 的意思是要執行的build.gradle腳本中定義的名爲hello的Task,-q參數用於控制gradle輸出的日誌級別,以及哪些日誌能夠輸出被看到。這節咱們講一些Gradle日誌相關的知識。gradle
Gradle 日誌級別和平時咱們開發Android時的日誌級別差很少。可是除了一些通用的級別以外,Gradle還增長了Quite和Lifecycle兩個級別,用於標記重要以及進度級別的日誌信息。具體以下:ui
若是咱們想要顯示的日誌等級,就能夠在task以前使用-首字母便可實現控制。spa
例如:命令行
使用Gradle構建的時候,常常會遇到構建失敗,這時候咱們就須要經過日誌去分析和解決。除了咱們在上面提到的日誌信息以外,Gradle還支持堆棧信息的打印,它可以幫助咱們很好的定位和分析問題。調試
默認狀況下,堆棧信息的輸出是關閉的,須要咱們經過命令行的堆棧信息開關打開它,這樣咱們在構建失敗的時候,能看到輸出的堆棧信息,便於分析和解決問題。下面是錯誤堆棧的開關選項說明:日誌
通常的,咱們推薦使用-s,由於-S的堆棧太長太多了,不方便查詢和分析,-s相對精簡,能幫助定位和解決大部分問題。code
在編寫Gradle腳本時,咱們有時候還須要輸出一些日誌,來驗證咱們的邏輯是否正確,這時咱們可使用Gradle提供的日誌功能。對象
一般咱們使用的時print系列的方法,把日誌信息輸出到標準的控制檯輸出流(它被Gradle定爲QUIET級別的日誌):blog
println '輸出一段日誌信息'
除了print系列方法以外,咱們也可使用logger靈活的輸出不一樣級別的日誌:開發
logger.quiet('quiet 日誌信息')
logger.error('quiet 日誌信息')
......
其中logger是調用的Project的getLogger方法獲取的Logger對象的實例。