写真1●Maven2が生成したプロジェクト情報ページ
写真1●Maven2が生成したプロジェクト情報ページ
[画像のクリックで拡大表示]

 プロジェクト・ビルド・ツールApache Maven2がついにリリースされた。

 以前,本連載で紹介したMavenの新バージョンである(関連記事,「【Jakarta/Apacheウォッチ】第2回 Javaビルド環境の標準はAntからMavenへ」)。新バージョンでは,旧バージョンの弱点の克服や機能強化などが行われ,よりいっそう強力なビルド・ツールとなった。今回は,新しいMavenを紹介する。

プロジェクト管理ツールとしての機能を備える

 Maven は,Antやmakeなどと同様にプログラムのコンパイルやテスト,パッケージングなどを行うビルド・ツールだ。しかし,Mavenが提供する機能はそれだけにはとどまらず,開発プロジェクトに関する様々な情報を管理することが可能だ。プロジェクト管理ツールとしての機能を備えていると言える()。


)ここで言うプロジェクト管理とは,システム開発プロジェクトにおけるソフトウエア・リソースを対象とした管理のことであり,Mavenはスケジュールや予算などのリソース管理ツールではない。
 旧バージョンのMaven(以降,Maven1と呼ぶ)はその豊富な機能と分散開発との親和性,他プロダクトの利用と配布の簡便さから,リリース以来多くのオープンソース・プロダクトの開発に利用されるようになった。Maven1はJavaプログラムを対象としたツールであるため,Javaのプロジェクトに限られるが,Antやmakeの代わりにシステム開発プロジェクトにて利用されるケースも増えている。

Mavenの機能

 新しいMaven(以降,Maven2と呼ぶ)は,Maven1の機能を踏襲しつつ内部の作りをまったく新しいものとし,Maven1での様々な問題点を修正している。まずは,Maven2の機能を紹介する。Maven2ではMaven1同様に下記の機能を提供する。

  • プログラムのビルド
  • ドキュメント生成
  • 各種のレポート生成
  • 依存するライブラリの管理
  • リソース管理システム(SCM)への接続
  • リリースパッケージの生成
  • パッケージのデプロイ
 これらの機能は,特別なタスクを定義することなく簡単に利用できる。実際にはMaven2がPOMとよばれるプロジェクト情報ファイル(プロジェクトごとに用意)とプロジェクト内のプログラムファイルを解析し,様々な機能を実行するようになっている。

Mavenの利用法

 前述したようにMavenは単純なビルド・ツールではない。Mavenを用いてシステム開発プロジェクトを管理する場合,多くの場面でMavenの機能が利用できる。以下にその流れを示す。

  • プロジェクトのディレクトリ構造の作成
  • プロジェクトが依存するライブラリの定義
  • プロジェクトの雛形の作成
  • SCMへの登録
  • 開発メンバへの展開
  • プロジェクトが依存するライブラリの入手
  • プログラムのビルド
  • リリースパッケージの生成
  • リリースパッケージのデプロイ
  • JavaDocの生成
  • 単体テストレポートの生成

 まずはMavenをインストールしてみよう。

この先は会員の登録が必要です。今なら有料会員(月額プラン)が4月末まで無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら