ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kirby Files <>
Subject Re: Configurations and Ivy file confusion
Date Mon, 27 Apr 2009 14:15:34 GMT
Tom wrote on 04/24/2009 03:54 AM:
>>> OK, many projects have source and jar artifacts with the same name,
>>> so you really want to either set a retrieve pattern which includes
>>> the type of the artifact for disambiguation. If you cannot do this,
>>> you'll need to specify an exclusion rule for your dependencies to
>>> only include type jar. Here are examples of both:
> I cannot quite wrap my head around this (I've used your configurations).
> Now, using:

I'm not quite sure what you're asking. Are you wondering why the 
pattern I supplied is truly necessary, and why your fails?

> Using:
> <ivy:retrieve conf="runtime" pattern="lib/[artifact]-[revision].[ext]"/>
> [ivy:retrieve] *found org.codehaus.enunciate#enunciate-rt;1.10 in public*
> C:\Documents and Settings\toeu\My
> Documents\kp\profiler\kpprofiler2\components\s
> ervice\build.xml:44: impossible to ivy retrieve:
> java.lang.RuntimeException: pro
> blem during retrieve of nl.knowledgeplaza#kpprofiler-service:
> java.lang.RuntimeException: *Multiple artifacts of the module
> org.codehaus.enunciate#enunciate-rt;1
> .10 are retrieved to the same file!* Update the retrieve pattern to fix
> this error.

org.codehaus.enunciate#enunciate-rt;1.10 specifies a *module*, which 
will have multiple artifacts. If you retrieve those based solely upon 
name-revision.ext, then jars containing different contents, and with 
different type will collide into the same local jarname when you retrieve.

Try "find ~/.ivy2 -name 'enunciate*.jar'" and see what you get 
(substitute the name of your cacheDir if you've changed the default). 
You'll see that the enunciate module has two jars with an artifact 
name of enunciate-rt (they differ by classifier). That's why a 
more-specific retrieve pattern is required.


View raw message