倭マン's BLOG

くだらない日々の日記書いてます。 たまにプログラミング関連の記事書いてます。 書いてます。

Maven2 を使おう!(1):何が便利?

Maven2*1 は「プロジェクト管理ツール」と言われる。 でも、「管理」という語は、実際に何をするのかと聞かれても具体的によく分からないものの1つ*2。 なので、「これは Maven2 にしか出来ない」って機能をいくつか挙げておきましょう。

♪デフォルトで周辺作業の自動化が出来る♪


ビルド・プロセスの周辺作業をしてくれるサポートツールといえば make や Ant などですが、これらはプロジェクトを始める際にビルド・プロセスを一から書かなければなりません*3。 しかし、Maven2 ではビルド・プロセスが予め定義されているので、プロジェクトを始める際にプロジェクト・テンプレートを生成する以外に行うことはありません。

Maven2 では「フォルダ構造が決められている」窮屈さがありますが、逆にそれが周辺作業を自動化してくれるメリットにつながっているのです。 「Ant と Maven2 の違いはライブラリとフレームワークの違いだ」といっても良いかと思います。

♪必要なライブラリを自動的にダウンロードしてくれる♪


Java には高品質なオープンソース・ライブラリが山のようにあります。 車輪の再発明をしないためにも、それらを自分のプロジェクト内で効率よく使えるようになりましょう。 これを難なく行えるようにサポートしてくれるのが Maven2 です。

Maven2 では、指定したライブラリだけでなく、そのライブラリが依存しているライブラリなども(リポジトリから)探し出してダウンロードしてくれます。 しかもバージョンの指定も行えるので、バージョンの違いによる面倒臭さもほとんど感じずにすみます。

Apache Maven 2.0入門 Java・オープンソース・ビルドツール

Apache Maven 2.0入門 Java・オープンソース・ビルドツール

*1:mavenは「達人」の意。 Maven2Maven のバージョン2。

*2:クラス名が「〜Manager」となっていた場合、大抵そのクラスの責務は曖昧なので、名前を考え直しましょう

*3:実際にはコピペするかと思いますが。