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 fnord <li...@libertylost.org> on 2010/11/19 17:41:41 UTC

Building a meta module

I've been trying to build a meta module without much luck.

Basically, I built an ivy.xml file listing all of the JBoss dependencies
necessary to compile stuff for one of our departments and published it to
our Maven repo. An abbreivated version of it looks like this:

<ivy-module version="2.0">
    <info organisation="espn-eng" module="jboss-compile-all"/>
     <configurations defaultconfmapping="default->default">
     	<conf name="default" />
     </configurations>
     
     <dependencies>
		  <!-- jboss reference jars -->
	      <dependency org="jboss" name="commons-logging"
rev="${jboss.reference.version}" conf="default->default"/>
	      <dependency org="jboss" name="jacorb"
rev="${jboss.reference.version}" conf="default->default"/>
    </dependencies>
</ivy-module>

Then I'm including this as a dependency in the main ivy.xml of a project:

        <dependency org="jboss" name="jboss-compile-all" rev="4.3.0_CP06">
                <artifact name="jboss-compile-all" type="xml" />
        </dependency>

The problem is that this second file gets pulled into the appropriate
folder, but it doesn't get resolved. Ivy's not resolving the file, just
leaving it amongst the other jars.

Does anyone know how I can get Ivy to resolve this secondary file?


Thanks,
fnord
-- 
View this message in context: http://old.nabble.com/Building-a-meta-module-tp30259307p30259307.html
Sent from the ivy-user mailing list archive at Nabble.com.


Re: Building a meta module

Posted by Mitch Gitman <mg...@gmail.com>.
It looks like your problem has to do with your specifying this in your
dependent projects:
       <dependency org="jboss" name="jboss-compile-all" rev="4.3.0_CP06">
               <artifact name="jboss-compile-all" type="xml" />
       </dependency>

As opposed to this:
       <dependency org="jboss" name="jboss-compile-all" rev="4.3.0_CP06" />

I'm kinda puzzled that Ivy is finding anything for the artifact you're
specifying. It's not like you're secifying a file called
jboss-compile-all.xml on top of the ivy.xml. When you refer to a secondary
file, do you mean the ivy.xml?

As a general best practice, modules should depend on other modules through
confs alone, not through artifacts. Artifacts are an implementation detail;
they're not part of the Ivy module interface.

On Fri, Nov 19, 2010 at 8:41 AM, fnord <li...@libertylost.org> wrote:

>
> I've been trying to build a meta module without much luck.
>
> Basically, I built an ivy.xml file listing all of the JBoss dependencies
> necessary to compile stuff for one of our departments and published it to
> our Maven repo. An abbreivated version of it looks like this:
>
> <ivy-module version="2.0">
>    <info organisation="espn-eng" module="jboss-compile-all"/>
>     <configurations defaultconfmapping="default->default">
>        <conf name="default" />
>     </configurations>
>
>     <dependencies>
>                  <!-- jboss reference jars -->
>              <dependency org="jboss" name="commons-logging"
> rev="${jboss.reference.version}" conf="default->default"/>
>              <dependency org="jboss" name="jacorb"
> rev="${jboss.reference.version}" conf="default->default"/>
>    </dependencies>
> </ivy-module>
>
> Then I'm including this as a dependency in the main ivy.xml of a project:
>
>        <dependency org="jboss" name="jboss-compile-all" rev="4.3.0_CP06">
>                <artifact name="jboss-compile-all" type="xml" />
>        </dependency>
>
> The problem is that this second file gets pulled into the appropriate
> folder, but it doesn't get resolved. Ivy's not resolving the file, just
> leaving it amongst the other jars.
>
> Does anyone know how I can get Ivy to resolve this secondary file?
>
>
> Thanks,
> fnord
> --
> View this message in context:
> http://old.nabble.com/Building-a-meta-module-tp30259307p30259307.html
> Sent from the ivy-user mailing list archive at Nabble.com.
>
>