On 13/06/2013 21:10, Charles Duffy wrote:
Howdy --

I have a wrapper with the following:

<ivy-module version="1.0">
<info organisation="shims.spring" module="spring-web-servlet"
revision="3.0.5.RELEASE"/>
<configurations>
<conf name="default"/><conf name="master"/><conf name="compile"/>
<conf name="provided"/><conf name="runtime"/><conf name="test"/>
<conf name="system"/><conf name="sources"/><conf name="javadoc"/>
<conf name="optional"/>
</configurations>
<publications/>
<dependencies>
<dependency org="spring" name="spring-webmvc" rev="3.0.5.RELEASE"
conf="*->@"/>
</dependencies>
</ivy-module>

My expectation is that this will map local to remote configurations only
for those which are like-named.

However, this expectation doesn't hold up in reality -- for some reason,
the "compile" configuration in the shim gets mapped to the "optional"
configuration in the target:

== resolving dependencies
shims.spring#spring-web-servlet;3.0.5.RELEASE->spring#spring-webmvc;3.0.5.RELEASE
[compile->optional]
== resolving dependencies spring#spring-webmvc;3.0.5.RELEASE->rome#rome;1.0
[optional->master(*)]

Why could this happen? How can I prevent it?


Hi Charles,

Have a look in your local cache at the ivy.xml that Ivy has created for spring-mvc, it will have derived an Ivy file from the pom.xml and sometimes I've seen unusual output from that which may explain what you're seeing.

If that's the case it might make sense to hand-crank the ivy file in a local repo for that library. Unless anyone else can suggest a workaround.

Jason

Reply via email to