I am in the process of reviewing the use of Ivy in our application. I have set up a simple configuration to pull down cobertura.
<ivy-module version="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
<info
organisation="com"
module="adesa"
status="integration">
</info>
<configurations>
<conf name="runtime" description=""/>
</configurations>
<dependencies>
<dependency org="cobertura" name="cobertura" rev="1.8" transitive="true"/>
</dependencies>
</ivy-module>
I know that cobertura has dependencies on other jar files. So how does one get those other jar files? The only thing that I see in my cache directory is the cobertura jar file.
Here is my ivysetting.xml
<ivysettings>
<settings defaultResolver="chained" />
<resolvers>
<chain name="chained" returnFirst="true">
<url name="apache" m2compatible="true">
<!--Apache -->
<artifact pattern="http://repo1.maven.org/maven2/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" />
<artifact pattern="http://people.apache.org/repo/m2-incubating-repository/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" />
</url>
<url name="jboss" m2compatible="true">
<!-- JBoss -->
<artifact pattern="http://repository.jboss.com/maven2/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" />
</url>
<ibiblio name="ibiblio" m2compatible="true" />
<url name="mvnrepos" m2compatible="true">
<!-- IBIBLIO-Mirror -->
<artifact pattern="http://mirrors.ibiblio.org/pub/mirrors/maven2/[organisation]/[module]/[branch]/[revision]/[branch]-[revision].[ext]" />
</url>
</chain>
</resolvers>
Are there list of other repositories that can be used to get dependencies/jars?
Snippet from the build.xml file:
<target name="load-ivy">
<path id="ivy.lib.path">
<fileset dir="${basedir}/lib" includes="*.jar"/>
</path>
<taskdef resource="org/apache/ivy/ant/antlib.xml" uri="antlib:org.apache.ivy.ant" classpathref="ivy.lib.path"/>
</target>
<target name="ivy-init" depends="load-ivy">
<mkdir dir="${dest.repo.dir}"/>
<ivy:settings id="basic.settings" file="${basedir}/ivysettings.xml"/>
</target>
<target name="ivy-clean" depends="ivy-init">
<ivy:cleancache settingsRef="basic.settings"/>
<delete dir="${ivy.cache.dir}" failonerror="true" />
<delete dir="${dest.repo.dir}"/>
</target>
<target name="ivy-download" depends="ivy-clean,ivy-init">
<ivy:retrieve settingsRef="basic.settings" pattern="${dest.repo.dir}/[artifact]/[artifact]-[revision].[ext]" />
</target>
<target name="ivy-report" depends="ivy-download">
<ivy:report settingsRef="basic.settings" todir="${basedir}/logs" />
</target>