问题描述
我正在使用一些附加到我的 gradle 版本的静态分析插件(spotbugs、pmd)。当您运行 gradlew check
或依赖于 check
的东西时,它们会自动运行。
我正在尝试找到一种方法,在命令中只运行 check
的部分,但排除单元测试。由于 check
取决于 test
,如果可能的话,我不确定如何执行此操作。
我有大量的 java / android 模块,需要很长时间才能使用测试和静态分析进行完整构建,所以我想将它们分解为单独的 CI 系统上的单独任务。
解决方法
你应该能够做到:
./gradlew check --exclude-task test
查看文档 here
,您可以简单地创建一个新任务并添加对所有执行静态分析的任务的依赖,而不是像 Dave 建议的那样使用排除任务 check
调用任务 test
:
task staticAnalysis {
dependsOn 'spotbugsMain'
dependsOn 'pmdMain'
}
然后您可以调用 ./gradle staticAnalysis
。