マルチモジュール構成プロジェクト用実行時オプション

マルチモジュール構成のプロジェクトにおけるmvnコマンドの使い方を紹介していきます。

すべてのモジュールをビルドする

すべてのモジュールをinstallしたい場合は、普段どおりで構いません。モジュールのビルド順はMavenが計算してくれます。

mvn install

特定のモジュールだけをビルドする

--projectsオプションを使うことで、特定のモジュールだけをビルドできます。 たとえば次のコマンドはcoreモジュールだけをinstallします。

mvn install --projects core

なお--projectsの代わりに-plと短縮して書くことも可能です。

指定モジュールが依存しているモジュールもすべてビルドする

--projectsオプションだけでは指定モジュールが依存しているモジュールはビルドされないため、それらの最新版を使っての ビルドにはなりません。依存モジュールのビルドも必要な場合には、--also-makeオプションを利用しましょう。 Mavenはモジュール間の依存関係を自動的に計算して、依存モジュールをどの順にビルドするべきかも判断してくれます。

たとえばcoreモジュールとそれが依存するモジュールだけinstallしたい場合は、次のようにコマンドを実行します。

mvn install --also-make --projects core

なお--also-make-amと短縮して書くことも可能です。

指定モジュールに依存しているモジュールもすべてビルドする

自分がモジュールに加えた変更が他のモジュールに悪影響を与えていないことを確認するために、変更したモジュールに 依存するすべてのモジュールをビルドしたいこともあるでしょう。その場合は--also-make-dependentsを使用します。

mvn install --also-make-dependents --projects core

なお--also-make-dependents-amdと短縮して書くことも可能です。

途中のモジュールからビルドを再開(--resume-fromオプション)

ビルドが失敗してそれを修正した場合、ビルドを最初からやり直す必要はありません。修正したモジュールからビルドを再開することで、 ビルドにかかる時間を短縮できます。ビルドを開始したいモジュールを--resume-fromで指定してください。

mvn install --also-make --projects core --resume-from test

なお--resume-from-rfと短縮して書くことも可能です。

並列ビルド(--threadsオプション)

Maven3では複数モジュールを同時にビルドする--threadsオプションが提供されています。 非対応のプラグインがあること、実験的な実装であることに注意が必要ですが、CPUがボトルネックになっている ビルドを高速化したい場合には利用を検討できます。

Last updated