Tech Bytes

短くて分かりやすい技術情報を記事として共有します。みなさんにとって学びになれば幸いです。

mvn installとmvn packageの違いは?

mvn installとmvn packageの違いは何でしょう?

mvn installとmvn packageは、Mavenビルドツールで実行できる2つのタスクですが用途が異なります。

mvn install

mvn installは、プロジェクトのビルド、テスト、パッケージ化を行い、プロジェクトをローカルのMavenリポジトリにインストールします。
これにより、同じローカル環境で別のプロジェクトからこのプロジェクトを参照できるようになります。

mvn package

mvn packageは、プロジェクトのビルド、テスト、パッケージ化を行い、targetディレクトリにjarファイルやwarファイルなどのアーティファクトを生成しますが、ローカルリポジトリにはインストールしません。
これは、他のプロジェクトで依存関係を解決するために使用する必要がない場合に便利です。

つまり、mvn installは、プロジェクトの依存関係を解決するために他のプロジェクトから利用できるようにするために使用され、mvn packageは、アーティファクトを生成するだけで、他のプロジェクトから利用する必要がない場合に使用されます。

mavenのマルチプロジェクトの場合はmvn installして他のプロジェクトからも参照できるようにする必要がありますね。