Gradle: Substituir dependência transitiva pelo classificador de versão

Uma das dependências declaradas no meu projeto tem uma dependência transitiva em'com.google.guava:guava:15.0'. Mas meu aplicativo implantado no WAS / Weblogic não funciona devido a um problema de CDI que foi corrigido no'com.google.guava:guava:15.0:cdi1.0'. (mesma versão, mas com classificador) preciso informar ao gradle para usar este jar durante a compilação e o empacotamento. Estou tentando descobrir como podemos ignorar essa dependência transitiva com um classificador de versão específico do jar.

Tentei as seguintes abordagens:

Adicionada a dependência explicitamente:compile 'com.google.guava:guava:15.0:cdi1.0'. Mas ambos os frascos foram incluídos na guerra resultante.

Adicionada a dependência explicitamente e definida uma estratégia de resolução:

configurations.all {
    resolutionStrategy {
        force 'com.google.guava:guava:15.0:cdi1.0'
    }
}

Mesmo isso não funcionou.

Definiu uma estratégia de resolução para verificar e alterar a versão.

configurations.all {
     resolutionStrategy.eachDependency { DependencyResolveDetails details ->
         if (details.requested.group + ":" + details.requested.name == 'com.google.guava:guava') {
            details.useVersion "15.0:cdi1.0"
            //details.useTarget "com.google.guava:guava:15.0:cdi1.0"
        }
    }
}

Mesmo isso não funcionou.

Precisa de suas sugestões sobre como esse problema pode ser resolvido.

questionAnswers(4)

yourAnswerToTheQuestion