2017-10-10 114 views
0

因此,我試圖在Gradle中向控制檯輸出一些內容,即使構建失敗。我怎樣才能做到這一點?即使構建失敗,Gradle運行任務

我發現build.finalizedBy(taskName)但只有在構建正常完成時纔會運行。

回答

0

您可以使用gradle.buildFinished或終結器任務(如您所述)。

在您的示例中,如果build任務執行,build.finalizedBy(taskName)將僅執行taskName。如果在執行build任務之前構建失敗,則不會執行taskName

例如,這將根據構建的結果的消息:

gradle.buildFinished { result -> 
    if (result.failure) { 
     logger.lifecycle("build failed") 
    } else { 
     logger.lifecycle("build successful") 
    } 
} 
0

你可以讓任何構建通過使用搖籃調用的參數--continue在任務失敗繼續。如果您不想鍵入此參數的所有時間,你可以在你的settings.gradle使用下面的代碼:

startParameter.continueOnFailure = true 

請注意,其他任務可能會失敗,因爲失敗的早期任務。使用此選項,將執行通過finalizedBy連接的任務,但如果任務是相關的,則只應使用此選項,即使對於非故障情況也是如此。

當然,您還可以使用Gradle對象或其TaskExecutionGraph的生命週期偵聽器。您可以使用

相關問題