こんにちは!
スタッフ19号です!
今回は、Mavenについて調べてみたので、それについて書いていきます。
Mavenとは
Maven
はProject Object Model (POM)
という考え方に基づき、プロジェクトのビルド、テスト、ドキュメンテーション、成果物の配備など、プロジェクトのライフサイクル全体を管理するものです。プロジェクトに関する色々な情報を
POM
に集約し、POM
の情報に基づきプロジェクト全体を管理します。
つまり、プログラムのコンパイル、テスト実行、パッケージなどのソフトウェア開発における一連の作業を自動化するためのツールです!
似たようなものに、AntやGradleなどもあります。全て使い方とかが違うだけで、本質的には同じです。
Mavenの各作業
コンパイル
→コマンド「mvn compile」
特定のプログラミング言語を用いて記述されたコンピュータープログラムを他の言語(普通はコンピューターが実行できるバイナリ言語)を用いて記述された同じプログラムに形を変える。
プロジェクトをコンパイルする
テスト
→コマンド「mvn test」
ユニットテストを実行
パッケージング
→コマンド「mvn package」
成功すると target
ディレクトリに sample-1.0-SNAPSHOT.jar
が作成される。
作成される JAR ファイルの名前は、pom.xml
に記述されている artifactId
と version
から決定される。
インストール
→コマンド「mvn install」
作成した JAR ファイルをローカルリポジトリにインストールする。
作成した JAR ファイルはローカルリポジトリにインストールすることで、ローカルにある他のプロジェクトから参照することができるようになる。
依存関係をインストール。
コンパイル及び、パッケージ化する。
公開
→コマンド「mvn deploy」
作成した JAR ファイルをリモートリポジトリに配備する。
リモートリポジトリに配備するには、リモートリポジトリの情報をpom.xml
に記述する必要がある。
リモートリポジトリの情報は、project/distributionManagement
に入れ子として repository
要素を追加します。
repository
の子要素には id
(リポジトリの識別子), name
(リポジトリの名前), url
(リポジトリの場所を示す URL) などが指定可能。
削除
→コマンド「mvn clean」
プロジェクトをクリーンし、ビルド結果を削除
ビルドを失敗した場合や、うまく動かない場合に行う。
今まで細かく考えることなく、手順にしたがって作業を行っていた部分があるので、しっかりとそれぞれがどういう意味で、どういう役割なのかをこれからも意識して行っていきたいなと思いました。
以上!スタッフ19号でした!