Apache Maven Reactor 插件(已退休)

THIS PLUGIN IS RETIRED. IT IS NO LONGER MAINTAINED.
THIS PLUGIN IS RETIRED. IT IS NO LONGER MAINTAINED.
THIS PLUGIN IS RETIRED. IT IS NO LONGER MAINTAINED.
THIS PLUGIN IS RETIRED. IT IS NO LONGER MAINTAINED.

该插件可以在反应器中构建相互依赖的项目的子集。它应该在包含您没有处理的无关内容的大型反应堆构建中很有用。

目标概述

Reactor 插件有几个目标:

  • reactor:resume在某个时间点恢复一个反应器(例如,当它在中间发生故障时)

    示例:mvn reactor:resume -Dfrom=bar

  • reactor:make构建一个项目 X 以及 X 所依赖的所有反应器项目

    示例:mvn reactor:make -Dmake.folders=foo,bar

  • reactor:make-dependents构建一个项目 X 和所有依赖于 X 的反应器项目(reactor:make 的反面)

    示例:mvn reactor:make-dependents -Dmake.folders=foo,bar

  • reactor:make-scm-changes构建您个人更改的所有反应器项目(根据 SCM)以及依赖于您的更改的所有反应器项目

    示例:mvn reactor:make-scm-changes

make vs. make-dependents

目标reactor:makereactor:make-dependents非常相似。它们在依赖分析的方向上有所不同。

例如,假设项目“fooUI”依赖于项目“barBusinessLogic”,而项目“barBusinessLogic”又依赖于项目“bazDataAccess”。

fooUI --> barBusinessLogic --> bazDataAccess

通常,在构建时,您将首先构建 bazDataAccess,然后是 barBusinessLogic,然后是 fooUI。

  • make:为了“制作” barBusinessLogic,您首先必须构建 bazDataAccess。所以如果你在 barBusinessLogic 上运行 reactor:make,它会构建 bazDataAccess,然后构建 barBusinessLogic;它不会构建 fooUI。(这应该让您想起传统的“制作”工具。)
    barBusinessLogic --> bazDataAccess
  • make-dependents:因为 fooUI 依赖于 barBusinessLogic,所以 fooUI 是 barBusinessLogic 的“依赖”项目。任何依赖于 barBusinessLogic 的东西都是 barBusinessLogic 的“依赖项”之一。因此,reactor:make-dependents 将构建 barBusinessLogic,然后构建 fooUI。
    fooUI --> barBusinessLogic

换句话说,reactor:make 遍历 *down* 依赖树,而 reactor:make-dependents 遍历 *up* 依赖树。

例子

为了让您更好地了解 Reactor 插件的一些用法,您可以查看示例页面。