【发布时间】:2016-03-04 15:55:16
【问题描述】:
感谢 Gradle 工具 API GradleProject.getTasks(),我设法获得了一些项目的任务列表。有点酷,我可以读取任务的名称、描述、组以及是否公开。
我想知道是否有可能获取任务输出目录,尤其是对于测试或代码覆盖率的东西,这种任务会生成类似 HTML 的报告。最好在 Web UI 中显示这些报告。
有谁知道这是否可能,或者至少计划在工具 API 的未来版本中添加?
非常感谢:)
【问题讨论】:
感谢 Gradle 工具 API GradleProject.getTasks(),我设法获得了一些项目的任务列表。有点酷,我可以读取任务的名称、描述、组以及是否公开。
我想知道是否有可能获取任务输出目录,尤其是对于测试或代码覆盖率的东西,这种任务会生成类似 HTML 的报告。最好在 Web UI 中显示这些报告。
有谁知道这是否可能,或者至少计划在工具 API 的未来版本中添加?
非常感谢:)
【问题讨论】:
如果我的理解是正确的,目前 Gradle 工具 API 不支持类似 HTML 的报告。这些报告应该由您在构建中使用的任务实现。
例如,对于 Android 测试任务(单元任务和 UI 自动化测试的 cAT),您可以在 [您的项目路径]/app/build/reports 中找到 HTML 测试结果。
【讨论】:
为了从工具 API 中获取有关任务输出等任务的更多信息,您必须实现一个工具 API 插件,如下所示:
https://github.com/bmuschko/tooling-api-custom-model
请看这里:https://github.com/bmuschko/tooling-api-custom-model/blob/master/plugin/src/main/java/org/gradle/sample/plugins/toolingapi/custom/ToolingApiCustomModelPlugin.java#L31-L39。您可以在此方法中收集您感兴趣的信息并将其显示在您的“模型”类中。
我已经为我从事的一个项目成功地做到了这一点:https://github.com/liferay/liferay-blade-cli/tree/master/gradle-tooling/src/main/java/com/liferay/blade/gradle/tooling
【讨论】: