Apache Maven

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索
Apache Maven
Maven logo.svg
開発元 Apacheソフトウェア財団
最新版 3.3.9[1] / 2015年11月14日(8か月前) (2015-11-14[2]
対応OS クロスプラットフォーム
プラットフォーム Java
種別 プロジェクト管理ツール
ライセンス Apache License 2.0
公式サイト http://maven.apache.org
テンプレートを表示

Apache Maven(アパッチ メイヴン/メイヴェン)は、Java用プロジェクト管理ツールである。Apache Antに代わるものとして作られた。Apacheライセンスにて配布されているオープンソースソフトウェアである。

特徴[ソースを編集]

このツールの大きな特徴はプラグイン拡張により様々な使い方ができることである。ソースコードコンパイルテストJavadoc生成、テストレポート生成、プロジェクトサイト生成、JAR生成、サーバへのデプロイWAR, EARファイル生成など様々な機能が用意されており、Antの場合にはbuild.xmlという設定ファイルに細かい指示を記述して行っていた各処理を、Mavenでは大まかな指示をpom.xmlに記述して処理する形となっている。

Mavenの大きな特徴は、pom.xmlの<dependency>タグにプロジェクトで使用したいJARライブラリ名及びバージョンを指定することで、外部サイトで集中管理されているJARを自動ダウンロードし、ローカルでビルドに使用することができる。JARを手動でひとつずつダウンロードして設定する旧来の手法と比較して、このPerlCPANPHPPEARに似た技術により、WindowsUpdateなどのLiveUpdate英語版のように容易にライブラリを管理・アップデートできる。そのほかGitCVSSubversionなどのバージョン管理システムにも対応している。

例えば、開発チームでプロジェクトを共有したいとき、JARファイルをわざわざ他者に手動でダウンロード、インストール、アップデートさせる手間も省くことができ、pom.xmlファイルと必要なソースコード、リポジトリに登録されていないJARファイルを配布するだけで済むようになる。なお、リポジトリに登録されていないJARファイルについては自身でリポジトリを作成し、集中管理・配布することも可能となっている。

Mavenはプラグインによって拡張することも可能である。

Maven 3[ソースを編集]

2010年にはMaven 3がリリースされた。3においては2との後方互換性の確保が図られている一方、各種内部構造の大幅な更新がなされている。[3]

Maven 2[ソースを編集]

Maven 2はJavaで書き直されて多くの点で改良されているため、Maven 1と互換性がかなり低いものの、Maven 1とMaven 2で使われるMavenのファイル名が異なることから、ひとつのMavenプロジェクトディレクトリでMaven 1とMaven 2の設定ファイル(project.xml,pom.xmlなど)を共有し、併用することができる。Apache Jelly英語版及びAntに対する依存性はなくなっている。また、スクリプト言語であるGroovyに対応している。Maven 2ではproject.xmlがpom.xmlになり文法が変わっている。project.propertiesはsettings.xmlに変わった。Maven 1で使用していたmaven.xmlはpom.xmlに統合されている。

外部ツール[ソースを編集]

Javaの主要IDEであるEclipse (統合開発環境)NetBeansIntelliJはネイティブにMavenに対応しており、pom.xmlをIDEのプロジェクトとして取り込んで作業することが可能となっている。

脚注[ソースを編集]

[ヘルプ]
  1. ^ Maven 3.3.9
  2. ^ Maven Releases History
  3. ^ Maven 3.0リリース”. InfoQ (2010年10月12日). 2016年4月30日閲覧。

外部リンク[ソースを編集]