como excluir todos os artefatos de um grupo no maven?
Eu estou usando o maven 3 com o plugin Enforcer configurado para forçar a convergência de versões. Estou usando o Spring 3.1.2 e Spring Security 3.1.3.
O problema é que o Spring 3.1.3 POM declara dependências no Spring 3.0.7, porque essa é a versão mínima necessária para a segurança do Spring. Isso significa que o plugin enforcer reclama porque o grafo de dependência transitiva tem tanto o Spring 3.1.2 quanto o Spring 3.0.7 nele.
A correção é excluir explicitamente a primavera 3.0.7 como uma dependência da segurança de primavera para que o plugin enforcer fique feliz.
O trecho de código abaixo faz exatamente isso, o problema com isso é que eu estou tendo que repetir o mesmo trecho de um e outro ganho para cada pote de segurança de mola, isso é entediante e torna o pom difícil de ler, existe uma maneira de dizer maven algo ao longo das linhas.
para a dependência org.springframework.security não importa o que o artificatId ignore a dependência da estrutura de segurança na estrutura de mola?
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-acl</artifactId>
<version>${spring.security.version}</version>
<exclusions>
<exclusion>
<artifactId>spring-tx</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-asm</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-core</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-aop</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-beans</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-jdbc</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-expression</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-context</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>${spring.security.version}</version>
<exclusions>
<exclusion>
<artifactId>spring-aop</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-core</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-expression</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-beans</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-context</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>aopalliance</artifactId>
<groupId>aopalliance</groupId>
</exclusion>
<exclusion>
<artifactId>spring-web</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-jdbc</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
<exclusion>
<artifactId>spring-tx</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
</exclusions>
</dependency>