Maven:在一个阶段中将插件的多次执行与其他插件执行交错

Jer*_*oss 6 maven

我需要在预集成测试阶段执行以下操作:

  1. SQL-Maven的插件:执行
  2. 码头 - Maven的插件:部署战
  3. SQL-Maven的插件:执行

步骤1和3具有不同的配置.我尝试将1和3定义为单独的插件元素,但我相信Maven只是将它们合并为一个插件定义,从而导致执行顺序为1,3,2.

我需要一些方法来按上面定义的顺序执行它们.

urs*_*rsa 0

关于 Maven 构建过程的简短通知:

  1. 您只能在 pom.xml 中描述每个插件一次,重复描述是一种不好的做法(容易出错)。
  2. 您可以为每个插件描述多个单独的执行。
  3. 单个插件(绑定到单相)的执行将按顺序运行,无论其他插件定义如何。
  4. 不同插件(绑定到单阶段)的执行将按 pom.xml 中描述的顺序运行。

考虑这个语句,您有一个简单的方法- 将 (1) 和 (3) 绑定到不同的阶段。

我建议你绑定

  • (1) 和 (2) 进入“预集成测试”阶段,以及
  • (3) 进入“集成测试”阶段

它将解决顺序问题。另请参阅Maven 文档中的完整阶段列表,以找到适合您的情况的阶段。

如果您仅从 CI 服务器运行此场景,您还有另一种方法。您可以通过 pom.xml 中的单独配置文件配置构建作业以进行显式多步骤构建:

  • 构建二进制文件
  • 迁移方案
  • 部署应用程序
  • 负载测试数据

它更加复杂并且容易出错,所以我更喜欢第一种方法。