Presumably you have a dependency like this somewhere:
<dependency org="org.slf4j" module="com.springsource.slf4j.api" rev="1.6.1"/> in which case adding force="true" should work. Like so: <dependency org="org.slf4j" module="com.springsource.slf4j.api" rev="1.6.1" force="true"/> This gives tells the conflict manager (if it's willing to listen) that slf4j should be forced to 1.6.1. See: http://ant.apache.org/ivy/history/latest-milestone/settings/conflict-managers.html On 07/27/2011 07:17 AM, David Sills wrote:
All: I have a project that has a dependency on slf4j. I'm generally using 1.6.1 (with my own patch to fix a bug), but one of my dependencies has a transitive dependency on 1.5.6. I cannot figure out how to get rid of this JAR file in the ivyIDE container. I am trying this: <exclude org="org.slf4j" module="com.springsource.slf4j.api" artifact="com.springsource.slf4j.api-1.5.6.jar" matcher="exact"/> The org and module correspond exactly to how the offending JAR file is stored in my repository. I know I have to be missing something, but I simply can't see it. Does anyone? I have tried: <exclude org="org.slf4j" module="com.springsource.slf4j.api"/> But of course that removes all versions of the JAR file, even the one I want to keep. Can someone explain why there is not a "rev" attribute in the exclude element? It would seem logical - don't take this revision of the library. Thanks! David Sills