Jak używać pliku BOM w Maven?

81

Przeprowadziłem wiele badań w Internecie i nie znalazłem łatwego wyjaśnienia, co zrobić z BOMplikami w Maven.

Problem polega na tym, że używam JBoss 7.1.1 i chcę dołączyć wszystkie pliki JBoss klienta JBoss pom.xml. JBoss ma podręcznik, który mówi, że powinienem używać plików BOM, ale nie wiem, jak to wykorzystać w moim pom.xml.

Proszę pomóż.

user2071995
źródło
Czy przypadkiem masz na myśli plik .pom? Czy możesz podać link do tej instrukcji?
JHollanti,

Odpowiedzi:

140

A bomto tak zwana lista materiałów - zawiera kilka zależności, aby zapewnić, że wersje będą ze sobą współpracować. JBoss ma bony dla wielu swoich projektów, w tym Arquillian i samego JBoss AS .

Jest wyjaśnienie bomużycia w dokumentacji Maven - jest ono ukryte znacznie poniżej.

Praktyczny przykład:

Dołączasz bom do swojego pom w następujący sposób:

<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> 

Wtedy nie musisz określać atrybutu wersji zależności, jeśli jest zdefiniowana w bomnastępujący sposób:

<dependency>
    <groupId>javax.enterprise</groupId>
    <artifactId>cdi-api</artifactId>
    <scope>provided</scope>
</dependency>
kostja
źródło
W rzeczywistości po zainstalowaniu Jboss można znaleźć jboss-eap-6.0 \ bin \ client \ jboss-client.jar W tym samym folderze znajduje się plik readme.txt C: \ jboss-eap-6.0 \ bin \ client \ README.txt
Reddymails
1
@Reddymails - tak, prawdopodobnie jest to ten podręcznik, którego OP nie był pewien, jak zinterpretować. Dobre znalezisko.
kostja
2
Nawiasem mówiąc, kolejny przydatny wskaźnik: Maven i JBoss: jak używać BOMów do synchronizacji wydań
Guillaume Husta