Próbuję znaleźć „ogólny” sposób wykluczenia zależności przechodnich z włączenia bez konieczności wykluczania jej ze wszystkich zależności od niej zależnych. Na przykład, jeśli chcę wykluczyć slf4j, wykonuję następujące czynności:
<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>
Ma to na celu po części wyczyszczenie pliku pom, po części w celu uniknięcia problemów w przyszłości z dodawaniem zależności zależnych od tej wykluczonej zależności - i zapominaniem o jej wykluczeniu.
Czy istnieje sposób?