Ivy Files


Ivy use is entirely based on what is called ivy files. Ivy files are xml files, usually called ivy.xml, containing the description of the dependencies of a module, its published artifacts and its configurations.

Here is the simplest ivy file you can write:
<ivy-module version="1.3">
<info organisation="myorg"
module="mymodule"
/>
</ivy-module>
Since version 0.8, ivy publishes an xslt which help make ivy files more readable. You just have to add
a line like this one in your ivy file:
<?xml-stylesheet type="text/xsl" href="http://ivyrep.jayasoft.org/ivy-doc.xsl"?>
However, all information is not presented with the xslt (dependency configurations, in particular).
And due to security issues, it only works if the ivy file is in the same domain as the xsl... But they are particularly useful to browse the ivy repository.

If you want to see a sample file using almost all possibilities of ivy files, check this one, with or without xslt.

Before beginning the reference itself, it is required to have in mind the terminology defined in the main page of this reference documentation.

For those familiar with xml schema, the schema used to validate ivy files can be found here. For those using xsd aware IDE, you can declare the xsd in your ivy files to benefit from code completion / validation:
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="1.3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation=
"http://ant.apache.org/ivy/schemas/ivy.xsd">
<info organisation="myorg"
module="mymodule"
/>
</ivy-module>

Hierarchical Index

ivy-module
info
license
ivyauthor
repository
description
configurations
conf
publications
artifact
conf
dependencies
dependency
conf
mapped
artifact
conf
include
conf
exclude
conf
conflicts
manager

ivy-module

Tag: ivy-module

Root tag of any ivy-file.

Attributes

AttributeDescriptionRequired
versionthe version of the ivy file specification - should be '1.3' with current version of ivy Yes

Child elements

ElementDescriptionCardinality
infocontains information about the described module 1
configurationscontainer for configuration elements 0..1
publicationscontainer for published artifact elements 0..1
dependenciescontainer for dependency elements 0..1
conflictssection to configure the conflict managers to use 0..1