Sto cercando di trovare un modo "generico" per escludere una dipendenza transitiva dall'inclusione senza doverla escludere da tutte le dipendenze che dipendono da essa. Ad esempio, se voglio escludere slf4j, faccio quanto segue:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jmx</artifactId>
<version>3.3.2.GA</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.4.0.GA</version>
<type>jar</type>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>
Questo è in parte per ripulire il file pom, in parte per evitare problemi in futuro con persone che aggiungono dipendenze che dipendono da quella dipendenza esclusa e dimenticandosi di escluderla.
C'è un modo?