我有一个多模块 Maven 项目(多层嵌套)。通常,当我执行 maven 构建(如 mvn install
或其他)时,maven 将在 继续处理子项目之前运行父项目的所有目标。
我希望能够定义一个在父对象上运行的目标,但要等到所有子对象都已处理完毕。有办法做到这一点吗?
具体来说,我想做的是运行一个 exec:exec
目标,它递归文件系统寻找测试结果文件,并将它们复制到一个中央位置,以便我们的 CI 系统(cruisecontrol)进行聚合.所以,这个问题的替代解决方案也很受欢迎:)
更新:我忘了提一个要求:无论构建是否成功,我都需要运行 exec 目标。
最佳答案
我认为不可能在多模块构建结束时从父级执行操作(这不是事情的工作方式)。但是,您是否考虑过根据所有子项目添加一个模块(可能是 pom 类型)(因此它将成为 react 堆构建中的“最后一个”项目)并在此运行 exec:exec
模块?我可能会遗漏一些东西,因为我不明白为什么这行不通。
关于maven-2 - child 完成后在 parent 身上执行目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1733033/