スマートフォン用の表示で見る

maven

コンピュータ

Maven

めいう゛ん

Apacheプロジェクトのひとつ。

Javaベースのオープンソース製プロジェクト管理ツール。プロジェクト管理といっても、いわゆる「プロジェクトマネージャ」の仕事をかたがわりしてくれるものではない。

発音は「メイヴェン」や「メイヴィン」ではなく「メイヴン」だと思われる。

ビルドツールApache Antのようにbuild.xmlを自分で手間をかけて記述することなくプロジェクトのビルドデプロイ、テストレポートなどの生成を容易にすることができる。

PerlCPAN, PHPPEARWindows UpdateFedora Coreyumのように登録された外部のライブラリを簡単に自分のプロジェクトに、自動ダウンロード/自動インストール/自動クラスパス追加をしてくれる。

Mavenはとくにチームでの開発には有用である。開発者の各マシンにMavenインストールさえしておけば、pom.xml (pomはproject object modelの略、Maven1ではproject.xml) ファイルをチーム内メンバーに配布するだけで、後は開発者がMavenのコマンドを一回実行するだけでソースコードJARライブラリなどを自動的に用意してくれる優れた便利なツールである。

現在、Maven2が登場し、より一層使いやすくなった。

Maven1とMaven2とではプロジェクトファイルのフォーマット (project.xmlとpom.xml) も、コマンドの使い方も異なるため、Maven2を使いこなすには使い方を新たに覚えなおす必要がある。ただし1つのプロジェクトディレクトリでMaven1とMaven2とを併用することは可能。

EclipseなどのIDEに対応したプラグインMevenide, Maven workshop, m2eclipse なども出ている。

Mavenではソースやjarをpom.xmlの指定に従いリポジトリから自動的に取って来る。リポジトリにはwell knownな公開のものもあるが、企業内などでローカルに立てることもできる。ローカルのmavenリポジトリサーバソフトとしては、jfrogのArtifactoryと、sonatypeのNexusがある。企業ごとの利用基準に照らして組織内で使ってよいライブラリ、使ってはならないライブラリなどの管理ができるらしい。