Hatena Blog Tags

Maven2

(コンピュータ)
めいう゛んつー

Apache Software Foundation で開発されている「プロジェクト管理ツール」 Maven のバージョン2。

Ant と Maven2 の違い

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

「Ant と Maven2 の違いはライブラリとフレームワークの違いだ」といっても良いでしょう。

Maven 1.x 系との違い

POM ファイル
Maven2 では POM ファイルが pom.xml になり(Maven 1.x 系では project.xml)、スキーマ定義のバージョンもアップされました。 新しいスキーマ定義によって、設定情報が POM ファイルに集約できるようになりました*1

デフォルトのディレクトリ構成

  • ソース・ファイル:「src/java」→「src/main/java」
  • リソース・ファイル:「src/conf」→「src/main/resources」
  • テスト・ファイル:「src/test」→「src/test/java」「src/test/resources」

間接的な依存性の自動解決
Maven 1.x 系では、間接的に依存するプロジェクトに関しても開発中のプロジェクトの POM ファイルで依存性を指定しないといけませんでした。 Maven2 では、あるプロジェクトへの依存関係を指定すれば、そのプロジェクトが依存しているプロジェクトへの依存性が自動的に解決され、アーティファクトが自動的にダウンロードされます。

その他、ビルド・ライフ・サイクル、リポジトリ・レイアウトやプラグインに関しても変更が加えられています。

*1:ただし、環境設定を行う settings.xml は別途必要。

このタグの解説についてこの解説文は、すでに終了したサービス「はてなキーワード」内で有志のユーザーが作成・編集した内容に基づいています。その正確性や網羅性をはてなが保証するものではありません。問題のある記述を発見した場合には、お問い合わせフォームよりご連絡ください。

ネットで話題

もっと見る

関連ブログ