ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alan Chaney <>
Subject Re: ivy:publish vs publications
Date Thu, 15 Sep 2011 13:11:30 GMT
On 9/15/2011 5:58 AM, zharvey wrote:
> (1) What is is the difference between the ivy:publish task called from the
> ant buildscript, and the "publications" element defined in the ivy.xml file
> ("module descriptor")? According to the docs, the publications element is
> used to "declare artifacts to be published", whereas the ivy:publish task
> actually publishes artifacts. But how are these two connected?
Well, the way I see it, the publications element is a definition of what 
you want published and the Ivy publish task
reads the definition and does what you ask.

>   Can they
> conflict with one another?
Following my definition above, they can't "conflict with each other" 
because they are two different aspects of the same concept.

> If they are connected, what are the best
> practices for making them work nicely with one another? For example, here's
> what I have so far:
They are indeed connected because the ivy.xml publications element tells 
the ivy:publish task what to do.

> ivy.xml
> =====
> <publications defaultconf="publish">
>      <artifact name="[artifact]-[revision].[ext]"/>
> </publications>
> build.xml
> ======
> <target name="publish">
>      <ivy:publish>
>          <artifacts pattern="dist/[artifact]-[revision].[ext]"/>
>      </ivy:publish>
> </target>
> Am I doing it right?!?
See, specifically, 
under 'Attributes'

name the name of the published artifact. This name must not include 

The name of the artifact should be something meaningful, like your 
project name - see the examples in the section above

As far as your ivy:publish target goes, there is a required attribute - 
'resolver' but normally I find that I need to specify the pubrevision as 

See examples in:

But, I wouldn't class myself as an "expert" on Ivy - I just use it a 
lot. I find the best approach is to read the documentation *very* 
carefully, and then take the examples and tweak them to do what I need. 
Ivy is a very powerful beast but there are a number of traps for the unwary.


View raw message