如何在 Maven 中使用 BOM 文件?
Posted
技术标签:
【中文标题】如何在 Maven 中使用 BOM 文件?【英文标题】:How to use BOM file with Maven? 【发布时间】:2013-01-30 06:18:54 【问题描述】:我在互联网上进行了大量研究,但没有找到任何简单的解释如何使用 Maven 处理 BOM
文件。
问题是我使用的是 JBoss 7.1.1,我想在 pom.xml
中包含所有 JBoss 客户端 jar。 JBoss 有一本手册说我应该使用 BOM 文件,但我不知道如何在我的pom.xml
中使用它。
请帮忙。
【问题讨论】:
你是说 .pom 文件吗?能否提供本手册的链接? 【参考方案1】:bom
是所谓的材料清单 - 它捆绑了多个依赖项以确保版本能够协同工作。 JBoss 的许多项目都有 bom,包括 Arquillian 和 JBoss AS 本身。
the maven docs 中有对 bom
用法的解释 - 它隐藏在下面。
一个实际的例子:
你像这样将 bom 包含到你的 pom 中:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jboss.bom</groupId>
<artifactId>jboss-javaee-6.0-with-tools</artifactId>
<version>$javaee6.with.tools.version</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
那么你不必指定依赖的version属性,如果它在bom
中定义如下:
<dependency>
<groupId>javax.enterprise</groupId>
<artifactId>cdi-api</artifactId>
<scope>provided</scope>
</dependency>
【讨论】:
事实上,一旦你安装了 Jboss,你可以找到 jboss-eap-6.0\bin\client\jboss-client.jar 在同一个文件夹中有 readme.txt C:\jboss-eap-6.0\ bin\client\README.txt @Reddymails - 是的,这可能是 OP 不知道如何解释的手册。很好的发现。 顺便说一句,另一个有用的指针:Maven and JBoss: how to use BOMs to keep releases in sync以上是关于如何在 Maven 中使用 BOM 文件?的主要内容,如果未能解决你的问题,请参考以下文章
在不同BOM版本共存的情况下,如何做好BOM管理,防止文件混乱。