web-dev-qa-db-ja.com

Maven BOM [部品表]依存関係

BOMオブジェクトの目的は何ですか?私はSpring 3.2.8バージョンとJBossサーバーで作業しているので、どのBOM依存関係を使用する必要がありますか? pom.xmlで次の依存関係に言及すると:

<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-framework-bom</artifactId>
            <version>4.0.1.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
</dependency>

JarファイルはMaven依存関係にダウンロードされますか?

17
Ajeet Deginal

BOMオブジェクトの目的は何ですか?

Mavenの親子関係は、複数のプロジェクトの依存関係を1か所で管理するのに非常に便利です。ただし、Mavenプロジェクトには、1つの(直接)親のみを含めることができます。そのため、いくつかのプロジェクトを使用して依存関係を管理できるようにするために、依存関係管理用のインポートが導入されました。インポートを使用すると、このような単一の依存関係を定義し、複数の依存関係を管理できます-便利です!任意のプロジェクトをインポートできますが、BOMはこのようなインポート用に設計された特別なプロジェクトです。通常、BOMプロジェクトはdependencyManagementセクション以外にほとんど定義されておらず、メインプロジェクトに影響を与えすぎないように、無関係な依存関係はありません。

どのボム依存関係を使用する必要がありますか?

BOMは必須ではありません。どちらも使用する必要はありません。代わりに、dependencyManagementセクションですべての管理対象依存関係を自分で定義できます。これらには、Spring、JBoss、およびその他の依存関係が含まれます。ただし、BOMはこれを大幅に簡素化します。必要な数のBOMを追加できますので、両方を追加してください!しかし、@ Jesperが言及しているように、正しいバージョンを使用することを忘れないでください。複数のBOMを使用する場合、両方が共通の依存関係を参照する場合、順序は重要です。

JarファイルはMaven依存関係にダウンロードされますか?

BOMは<type>pom</type>、デフォルトのjarではありません。したがって、ダウンロードするjarファイルはありません。単一のpom.xmlファイルがダウンロードされ、Mavenによって読み取られます。

45
Anton Koscejev