質問

Maven リアクターについて読んでいますが、その用語の使用法に混乱しています。マルチモジュールはリアクターであること、Maven リアクターを操作できること、リアクターはプラグインであることを読みました。原子炉とは一体何でしょうか?

役に立ちましたか?

解決

リアクターは、一連のモジュールでゴールを実行できるようにする Maven の一部です。Maven 1.x で述べたように マルチモジュールビルドに関するドキュメント (リアクターの概念は Maven 1.x にすでに存在していました)、モジュールは 個別の作業単位ですが、リアクターを使用して集めて同時に構築することができます そして:

リアクターは、各プロジェクトによってそれぞれのプロジェクト記述子に記述されている依存関係から正しいビルド順序を決定し、指定された一連の目標を実行します。建築プロジェクトと、サイト生成などの他の目的の両方に使用できます。

説明したように、リアクターはマルチモジュールのビルドを可能にするものです。モジュール間の依存関係の有向グラフを計算し、このグラフからビルド順序を導出します (これが、循環依存関係が禁止されている理由です。いずれにしても、これは良いことです)。その後、モジュールの目標を実行します。言い換えれば、「マルチモジュールのビルド「は」ですリアクターの構築「と」リアクターの構築「は」ですマルチモジュールのビルド".

Maven 2.x では、マルチモジュール ビルドのサポートが大幅に改善され、Maven ユーザーにとってリアクターが透過的になりました。しかし、それはまだ存在しており、内部で使用されています。

2008 年 9 月 (すなわち、Maven 2 のロールアウトから長い時間が経ち、 リアクタープラグイン Maven リアクターと (再び) より緊密に対話できるようにするために作成されました。ブレット・ポーターはこのことについてブログで書いています リアクター:私の新しいお気に入りの Maven プラグイン.

リアクター プラグイン機能のほとんどがネイティブにサポートされるようになりました (Maven 2.1.0 以降)。見る Maven のヒントとコツ:高度な Reactor オプション.

他のヒント

Reactor はプロジェクトに複数のモジュールがある場合に使用します。

リアクターによって行われる作業は次のとおりです。

  • モジュールの詳細の収集
  • 依存関係に基づいて順序を並べ替える
  • プロジェクトを順番にビルドします

Maven 2.1 リリース以降、Maven がマルチモジュール プロジェクトをビルドする方法を操作できる新しい Maven コマンド ライン オプションが追加されました。これらの新しいオプションは次のとおりです。

-rf, --resume-from
    Resume reactor from specified project
-pl, --projects
    Build specified reactor projects instead of all projects
-am, --also-make
    If project list is specified, also build projects required by the list
-amd, --also-make-dependents
    If project list is specified, also build projects that depend on projects on the list  

ソース

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top