【发布时间】:2017-01-20 15:15:33
【问题描述】:
我研究了很多,但仍然没有找到令人满意的解决方案。 我有一个多模块 maven 项目,想从surefire插件生成的surefire-reports中生成一个汇总报告。除了我必须运行构建过程两次之外,一切都正常工作。
要求只运行一次一次。有什么想法吗?
project (aggregator and parent POM)
|- module1
|- module2
|- module3
|- moduleX
我知道问题的背景(maven 在子项目之前创建根项目的报告,因此聚合在第一次运行时返回空)但几乎所有(1、2、3@987654324 @) 所有状态只是为了重新运行构建过程。 (还有一些post指向这个方向) 唯一有用的 post 是将聚合器和父 pom 分开。 然而,这只是我最后的手段。还有其他想法如何在一次 Maven 运行中获得汇总报告吗?
澄清:两次运行构建过程意味着调用
- mvn clean install surefire-report:report(完成后再次调用)
- mvn clean install surefire-report:report
或
- mvn clean site(完成后再次调用)
- mvn 清洁网站
在第一次运行中,汇总报告是空的,因为它是在所有其他项目之前构建的(由于反应堆构建顺序) - 因此没有一个子模块具有必要的surefire txt/xml 文件。在第二次运行中,聚合报告生成良好,因为使用了第一次运行的可靠报告。
【问题讨论】:
-
“运行构建过程两次”是什么意思?通常,您只需要在站点生成之外使用
mvn clean site或mvn clean install surefire-report:report。 -
请解释“..运行构建过程两次”
-
您可能想提供一个示例。您是如何指定聚合的?
标签: maven maven-3 maven-surefire-plugin