ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shawn Castrianni <>
Subject RE: advanced ivy retrieve syntax
Date Thu, 04 Mar 2010 21:57:01 GMT
If I am understanding your question correctly, this is already supported by IVY with the addition
of configuration intersection.  I requested this feature last year and Xavier added it last
year.  You specify multiple configurations for each "dimension" or "axis" and you can intersect
those "dimensions" to only get the artifact that belong in both of the intersected configurations.

If you search the user forum with nabble or something and look for configuration intersection,
you can probably find my posts.  The IVY documentation has information on this feature.

Shawn Castrianni

-----Original Message-----
From: dek577 [] 
Sent: Thursday, March 04, 2010 3:35 PM
Subject: Re: advanced ivy retrieve syntax

The following is also on my wishlist. Declare an artifact such as:

<artifact name="libzlib" type="lib" ext="lib" conf="compile,release"
<artifact name="zlib" type="lib" ext="lib" conf="compile,release"

and be able to do a resolve or a cachefileset with syntax similar to the

<ivy:cachefileset setid="library.fileset" type="lib" conf="compile">
 <filter linkage="static"/>

Juha Ranta wrote:
> Juha Ranta wrote:
>> dek577 wrote:
>>> Does the ivy:retrieve ant task support more advanced configuration
>>> specifications similar to the configuration mappings, intersections, and
>>> negations described here:
>>> I'm interested in doing a retrieve similar to the following:
>>> <task name="retrieve">
>>> <ivy:retriive conf="runtime+release"
>>> pattern="${staging.dir}/[module]-[revision]/[artifact](.[ext])"/>
>>> </task>
>>> that grabs a subset of the dependencies.
>> I've run to a similar need with my confs. The problem seems to arise when
>> I have confs in two or more "dimensions". For instance, while
>> constructing my server platform, I need to put some jars in classpath,
>> other jars as Bea shared libraries, others in mbeantypes directory, etc.
>> Fine, I can use confs to tell whether I want to put the jar in classpath
>> or the mbeantypes directory. However, at the same time, I may need to
>> insert some jars only in the developer's classpath and some only in the
>> runtime classpath. 
>> Thus, it would be useful to be able to retrieve, say,
>> "developer+mbeantypes". 
>> I looked at the current options in Ivy but didn't find anything that
>> worked well in this situation.
>> Juha Ranta
> Now that I thought of it, I'd like it if I could do something like this:
> <dependency org="xxx" module="dom4j" conf="runtime->default"
> e:localdir="mbeantypes"/>
> and then use the localdir or whatever extra attribute I defined in the
> dependency in my retrieve task. 
> I don't think it's always a good idea to expect that a single jar should
> know whether it is placed in war, ear, APP-INF/lib, classpath, as a BEA
> shared library, in the mbeantypes directory, in the classpath, or
> whatever, and publish all the confs that the user may need. 

View this message in context:
Sent from the ivy-user mailing list archive at

This e-mail, including any attached files, may contain confidential and privileged information
for the sole use of the intended recipient.  Any review, use, distribution, or disclosure
by others is strictly prohibited.  If you are not the intended recipient (or authorized to
receive information for the intended recipient), please contact the sender by reply e-mail
and delete all copies of this message.

View raw message