Maven依存性メカニズム、それがどのように動作するか
Mavenの依存関係メカニズムは、必要なすべての依存関係ライブラリを自動的にダウンロードし、バージョンのアップグレードを維持するのに役立ちます。
事例
どのように動作するかを理解するためのケーススタディを見てみましょう。 Log4Jをプロジェクト・ロギング・メカニズムとして使用したいとします。ここにあなたがしていることは…
1.伝統的な方法で
-
Log4j jarライブラリをダウンロードする
-
jarをプロジェクトのクラスパスにコピーする
-
プロジェクトの依存関係に手動で含める
-
すべてあなた自身で管理し、すべてを行う必要があります
Log4jバージョンのアップグレードがある場合は、上記の手順を再度繰り返す必要があります。
2. Mavenの方法で
-
例えば、log4j `Maven coordinates`を知る必要があります
<groupId> log4j </groupId> <artifactId> log4j </artifactId> <version> 1.2.14 </version>
log4jバージョン1.2.14ライブラリを自動的にダウンロードします。 “version”タグが無視されると、新しいバージョンがあるときに自動的にライブラリがアップグレードされます。
-
`Maven座標`を `pom.xml`ファイルに宣言します.
<依存関係> <依存関係> <groupId> log4j </groupId> <artifactId> log4j </artifactId> <version> 1.2.14 </version> </dependency> </dependencies>
-
Mavenがコンパイルまたはビルドされると、log4j jarがダウンロードされます
自動的にMavenローカルリポジトリに格納します。
-
すべてMavenによって管理されます.
説明
異なって見なさいか。 Mavenでは何が起こったのですか? Mavenのプロジェクトをビルドすると、 `pom.xml`ファイルが解析され、log4j Mavenの座標が表示されたら、Mavenはlog4jライブラリを次の順序で検索します:
-
Mavenローカルリポジトリでlog4jを検索します.
-
Mavenセントラルリポジトリでlog4jを検索します.
-
Mavenリモートリポジトリ内のlog4jを検索します(pom.xmlで定義されている場合).
このMaven依存関係ライブラリの管理は非常に素晴らしいツールであり、多くの作業を省くことができます。
リファレンス
依存メカニズムへ]