ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jean-Louis Boudart (JIRA)" <>
Subject [jira] Commented: (IVY-742) Support ivy.xml parent mechanism
Date Thu, 30 Oct 2008 10:19:44 GMT


Jean-Louis Boudart commented on IVY-742:

In my humble opinion parent mechanism is not only related to dependencies.

We could imagine that "parent support" allow you to inherit dependencies / configurations
/ licences / homeurl / etc ...

Example :
<ivy-module version="2.0">
<info organisation="foobar" module="parent">
<license name="GPL" url="..."/>
<configurations defaultconfmapping="conf1->other1;conf2->other2">
   <conf name="conf1" />
   <conf name="conf2" extends="conf1" />
   <dependency name="other-module" conf="conf1" />


child :
<ivy-module version="2.0">
<info organisation="foobar" module="child">
<parent organisation="foobar" module="child" revision="latest.integration"/>
<!-- where conf1 is inherited from parent -->
   <dependency name="meow" conf="conf1" />

Parent tag should support something to look up on filesystem before asking repositories maybe
an attribute like "location". This value should be set as ".." for default value
exemple :
<parent organisation="foobar" module="child" revision="latest.integration" location="../myParent"/>

And to keep ivy flexibility we could add an attribute to choose what we want to import from
Something like :
<parent organisation="foobar" module="child" revision="latest.integration" location="../myParent"

What do You think about it?

> Support ivy.xml parent mechanism
> --------------------------------
>                 Key: IVY-742
>                 URL:
>             Project: Ivy
>          Issue Type: New Feature
>          Components: Core
>         Environment: Any
>            Reporter: Neil Lott
> Here's the email that details this feature:
> On Thu, Feb 21, 2008 at 11:22 PM, Neil Lott <>
> wrote:
> Let's say I have multiple modules each with their own ivy.xml
> <ivy-module version="2.0">
>    <info organisation="${}" module="$
> {interface.jar.prefix}"/>
>    <configurations>
>        <conf name="interface"  description="dependencies for
> interface"/>
>        <include file="path/to/included-configurations.xml"/>
>    </configurations>
>    <publications>
>        <artifact name="${interface.jar.prefix}" type="jar"
> conf="interface" ext="jar"/>
>    </publications>
>    <dependencies>
>           <dependency org="twc" name="mas-core" rev="${mas.version}"
> conf="interface->server"/>
>    </dependencies>
> </ivy-module>
> and I want them all to share an inherited configuration found in a
> file: included-configurations.xml
> <configuration>
>    <conf name="test"/>
> </configuration>
> <dependencies>
>   <dependency name="testng" rev="5.7" conf="test"/>
> </dependencies>
> so in the inherited configurations file I'd also like to include a
> dependency that goes along with that configuration.
> Is something like this possible?
> No, this is not possible in Ivy, but you can use text or xml processing
> tools to recompose your Ivy file before asking Ivy to resolve the
> dependencies of your module.
> Alternatively, since what you ask is close to maven 2 parent mechanism, I
> think it could be a nice addition to Ivy feature set. So feel free to open
> an issue, and even provide a patch :-)
> Xavier
> Thanks,
> Neil
> -- 
> Xavier Hanin - Independent Java Consultant

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message