2.3. JBoss EAP の BOM ファイル
Maven BOM (Bill of Materials) ファイルの目的は、正常に動作する Maven 依存関係バージョンのセットを提供し、各 Maven アーティファクトに対して個別にバージョンを定義する必要をなくすことです。
JBoss EAP の Fuse BOM には以下の利点があります。
- Maven 依存関係のバージョンを定義するため、依存関係を POM に追加するときにバージョンを指定する必要がありません。
- 特定バージョンの Fuse に対して完全にテストされ、完全にサポートする依存関係のセットを定義します。
- Fuse のアップグレードを簡素化します。
Fuse BOM によって定義される依存関係のセットのみが Red Hat によってサポートされます。
Maven プロジェクトに BOM ファイルを組み込むには、以下の例のように、プロジェクトの pom.xml
ファイル (または親 POM ファイル内の) dependencyManagement
要素を指定します。
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <project ...> ... <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- configure the versions you want to use here --> <fuse.version>7.8.0.fuse-sb2-780038-redhat-00001</fuse.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.jboss.redhat-fuse</groupId> <artifactId>fuse-eap-bom</artifactId> <version>${fuse.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> ... </project>
依存関係管理のメカニズムを使用して BOM を指定した後、アーティファクトのバージョンを指定しなくても、Maven 依存関係を POM に追加できるようになります。たとえば、camel-velocity
コンポーネントの依存関係を追加するには、以下の XML フラグメントを POM の dependencies
要素に追加します。
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-velocity</artifactId> <scope>provided</scope> </dependency>
この依存関係の定義では、version
要素が省略されることに注意してください。