You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by "Brown, Carlton" <Ca...@compucredit.com> on 2008/02/21 16:46:55 UTC

Purpose of

Hi all,

Is it just me, or does <include> within <dependency> not have any
effect?

For example, I have a "virtual module" consisting of a random collection
of COTS jars that do not follow a repository naming convention.

If I want to retrieve just the jars that begin with "apache-", I thought
it might work like this:

<dependency org="myorg" name="mymodule" rev="5.7">
        	<include name="apache-*"/>
</dependency>

The behavior is no different than if I include "*".   The entire set of
jars is retrieved, including those that are not apache-*.    However, I
must include "*" or else ivy will go searching for "mymodule-5.7.jar".
This seems like a strange way to express global inclusion.

The documentation does not shed much light on the principles of
<include>, can someone explain it a little better?

Thanks,
Carlton

-----------------------------------------
====================================================
This message contains PRIVILEGED and CONFIDENTIAL
information that is intended only for use by the 
named recipient. If you are not the named recipient,
any disclosure, dissemination, or action based on 
the contents of this message is prohibited. In such
case please notify us and destroy and delete all 
copies of this transmission.  Thank you.
====================================================

Re: Purpose of

Posted by Xavier Hanin <xa...@gmail.com>.
On Thu, Feb 21, 2008 at 4:46 PM, Brown, Carlton <
Carlton.Brown@compucredit.com> wrote:

> Hi all,
>
> Is it just me, or does <include> within <dependency> not have any
> effect?
>
> For example, I have a "virtual module" consisting of a random collection
> of COTS jars that do not follow a repository naming convention.
>
> If I want to retrieve just the jars that begin with "apache-", I thought
> it might work like this:
>
> <dependency org="myorg" name="mymodule" rev="5.7">
>                <include name="apache-*"/>
> </dependency>
>
> The behavior is no different than if I include "*".   The entire set of
> jars is retrieved, including those that are not apache-*.    However, I
> must include "*" or else ivy will go searching for "mymodule-5.7.jar".
> This seems like a strange way to express global inclusion.
>
> The documentation does not shed much light on the principles of
> <include>, can someone explain it a little better?

Include is not transitive, it only affects the artifacts from the
dependency. Since your dependency is a virtual module, it doesn't publish
any artifact itself, so include has no effect. I think there's already been
some people asking for transitivity in include like it has been introduced
for exclude in 1.x (can't remember which version exactly). Feel free to open
a issue if there isn't one already.

Xavier

>
>
> Thanks,
> Carlton
>
> -----------------------------------------
> ====================================================
> This message contains PRIVILEGED and CONFIDENTIAL
> information that is intended only for use by the
> named recipient. If you are not the named recipient,
> any disclosure, dissemination, or action based on
> the contents of this message is prohibited. In such
> case please notify us and destroy and delete all
> copies of this transmission.  Thank you.
> ====================================================
>



-- 
Xavier Hanin - Independent Java Consultant
http://xhab.blogspot.com/
http://ant.apache.org/ivy/
http://www.xoocode.org/