Steve, I don't know if it will solve your problem, but could you set your resolveMode to "dynamic"? This will tell Ivy to use the revConstraint attribute rather than the revision attribute. <ivy:resolve resolveMode="dynamic" ... />
Maarten ----- Original Message ---- From: Stephen Woods <swoods...@gmail.com> To: ivy-user <ivy-u...@ant.apache.org> Sent: Wednesday, March 25, 2009 7:12:12 PM Subject: Conflict managers - using revConstraints? I have some questions about conflict managers... Here's my situation - Module A has a dependency to Spring revision "[2.0.2, )"... essentially indicating that it can use version "2.0.2" or later of Spring. - Module A is published to a shared repository, and the revision is set to "2.5.6" (because that is the latest in the repository at that time) with a revConstraint of "[2.0.2,)". - Module B is dependent on Module A - Module B has a dependency to Spring revision "2.0.2"... essentially indicating that is can only be used with version 2.0.2. - I set a latestCompatible conflict manager on Spring Now, what I would hope that would happen is that Spring 2.0.2 would be ultimately selected since its the latest version that is compatible between both Module A and B. But that's not what happens... Instead, it appears that since the published Module A has a revision of 2.5.6, it gets blacklisted out right, and the build fails because Ivy says there are no compatible versions between Module A and B. So my questions are... is there another conflict manager that I should consider using (i.e. something that takes into consideration the revConstraint)? If not, is the Ivy conflict manager framework sufficiently flexible enough to allow me to write my own conflict manager to handle this situation (I stepped through the latestCompatible conflict manager with a debugger and it looked pretty hairy)? Is there any documentation out there that explains how conflict managers work (other than the code and the official ivy docs)? Though this may only be impacting me at the moment, I think this is a showstopper for anyone attempting to use Ivy in an environment with any transitive version conflicts. Any insight would be greatly appreciated. Thanks! Steve