假設我已經在我的gradle構建腳本中爲運行集成和驗收測試創建了單獨的任務。當我運行構建任務時,我想按照以下順序運行測試任務:單元測試(測試任務),集成測試(intergationTest任務)和驗收測試(acceptanceTest任務)。這是可能的和如何?如何按特定順序製作Gradle運行任務?
1
A
回答
1
您正在尋找搖籃文檔中描述的「後應該運行」 - http://www.gradle.org/docs/current/userguide/more_about_tasks.html
1
這裏是你如何能做到這一點,而無需創建人工的依賴關係:
https://caffeineinduced.wordpress.com/2015/01/25/run-a-list-of-gradle-tasks-in-specific-order/
TLDR;版本:
//--- build aliases : define a synonym here if you want a shortcut to run multiple targets
def buildAliases = [
'all' : ['clean', 'assemble', 'runProvisioner', 'stopTomcat', 'installTomcat', 'deployToTomcat', 'startTomcat'],
'rebuild' : ['clean', 'assemble']
]
def expandedTaskList = []
gradle.startParameter.taskNames.each {
expandedTaskList << (buildAliases[it] ? buildAliases[it] : it)
}
gradle.startParameter.taskNames = expandedTaskList.flatten()
println "\n\n\texpanded task list: ${gradle.startParameter.taskNames }\n\n"
0
這就是我在我的項目上所做的。
check.dependsOn integTest
integTest.mustRunAfter test
tasks.withType(Pmd) {
mustRunAfter integTest // Pointing to a task
}
tasks.withType(FindBugs) {
mustRunAfter tasks.withType(Pmd) // Pointing to a group of tasks under Pmd
}
tasks.withType(Checkstyle) {
mustRunAfter tasks.withType(FindBugs)
}
它幫我按小組排列任務。
相關問題
- 1. 如何按特定順序製作Gradle複製源目錄?
- 2. 控制gradle任務執行順序
- 3. 按特定順序運行windows服務
- 4. Gradle自定義任務操作順序
- 5. 按順序運行Jenkins並行任務
- 6. Gradle可以按特定順序運行兩個測試嗎?
- 7. 如何在Gradle中並行運行特定任務
- 8. 如何強制openMP按特定順序運行迭代
- 9. 按順序運行耙式任務
- 10. Python,按特定順序運行命令
- 11. 按特定順序運行承諾
- 12. 按順序執行任務
- 13. Gradle任務按順序調用其他任務
- 14. 如何在gradle中運行任務後運行集成任務?
- 15. 如何讓6個線程按順序運行多個任務
- 16. SSIS可以按特定順序執行任務嗎?
- 17. Gulp.js運行的任務,在特定的順序阻斷
- 18. Gruntjs - 以特定順序運行多個攔截任務(Mongo&Node.js)
- 19. 任務依賴關係是否始終按照特定的順序運行?
- 20. 如何按特定順序運行多個事件?
- 21. 如何確保Java線程按特定順序運行
- 22. 如何按特定順序運行robotium測試?
- 23. 運行的gradle從任務
- 24. 如何按特定順序運行Spring批處理作業(Spring Boot)?
- 25. 如何執行gradle任務
- 26. 異步任務按順序執行?
- 27. 按順序執行這些任務 - Node.js
- 28. 如何過濾和執行特定的Gradle任務?
- 29. gradle:如何找出執行特定任務的插件?
- 30. gradle測試任務如何運行特定的junit測試套件?
正如我所看到的,它只指定了一個任務在另一個之後運行。我想在構建任務之前運行三個任務。我可以通過這個命令確實做到這一點,但這意味着如果我運行測試任務,只有兩個將運行,我不想這樣做。 – 2014-10-18 15:32:57
你試過了嗎? taskY.shouldRunAfter taskX1,taskX2'工作。 http://www.gradle.org/docs/current/javadoc/org/gradle/api/Task.html#shouldRunAfter(java.lang.Object ...) – Radim 2014-10-18 18:03:43
我知道這是可能的,但我希望這隻有在調用構建時纔會發生。 – 2014-10-18 18:35:48