Maybe it is due to the way you declare your dependencies. In your ivy.xml files, you declare the artifacts you actually want to resolve. I think you're not forced to in your use case. This kind of declaration are only needed when you try to resolve against a repository which doesn't declare the artifacts of a module, typically for modules without any ivy.xml.
So it may confuse the workspace resolver as it does not provides any jar. It only resolves the dependency and provides the classpath of the resolved project. Try to remove the "artifact" elements in your ivy.xml.
You are right!
I removed the <artifact> child of my <dependancy>s in ivy.xml files and the problem disappeared.