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 Jan Brauer <ja...@coremedia.com> on 2007/10/31 11:58:06 UTC
Having a hard time with publications and their configurations
I'm trying to figure out how the configurations mechanism works combined
with the publications feature.
I'm using these configurations in every module i defined.
<configurations defaultconfmapping="compile->default"
confmappingoverride="false">
<conf name="compile" visibility="private"/>
<conf name="test" extends="compile" visibility="private"/>
<conf name="master"/>
<conf name="runtime" extends="compile"/>
<conf name="default" extends="master,runtime"/>
</configurations>
This is my module ivy.xml:
<ivy-module version="1.3">
<info organisation="firma" module="firma-webapp"/>
<configurations>
<include file="${basedir}/../tools/etc/ivy/configurations.xml"/>
</configurations>
<publications>
<artifact conf="master"/>
</publications>
<dependencies>
<!-- original jars -->
<dependency org="commons-logging" name="commons-logging" rev="1.0.4"/>
<dependency org="javax.activation" name="activation" rev="1.0.2"/>
<dependency org="javax.servlet" name="servlet-api" rev="2.3"/>
<dependency org="org.springframework" name="spring"
rev="${version.spring}" conf=""/>
<dependency org="tomcat" name="jsp-api" rev="5.0.16"/>
<!-- Strange constructs -->
<dependency org="javadoc" name="javadoc" rev="1.3"/>
<!-- firma modules -->
<dependency org="firma" name="spring" rev="latest.integration"
changing="true" transitive="false" conf="compile->default;runtime->master"/>
<dependency org="firma" name="common" rev="latest.integration"
changing="true" transitive="false" conf="compile->default;runtime->master"/>
<dependency org="firma" name="firma-base" rev="latest.integration"
changing="true" transitive="false" conf="compile->default;runtime->master"/>
<dependency org="firma" name="firma-client" rev="latest.integration"
changing="true" transitive="false" conf="compile->default;runtime->master"/>
<dependency org="firma" name="firma-api" rev="latest.integration"
changing="true" transitive="false" conf="compile->default;runtime->master"/>
<dependency org="firma" name="firma-server" rev="latest.integration"
changing="true" transitive="false" conf="compile->default;runtime->master"/>
</dependencies>
</ivy-module>
This is the ivy.xml for the module I'm depending on:
<ivy-module version="1.3">
<info organisation="firma" module="firma-base"/>
<!--
<library vendor="sun" name="javawebstart" includes="*"/>
-->
<configurations>
<include file="${basedir}/../tools/etc/ivy/configurations.xml"/>
</configurations>
<publications>
<artifact conf="master,default" name="firma-base"/>
<artifact conf="default" name="firma-services"/>
<artifact conf="default" name="firma-version"/>
<artifact conf="default" name="EventLog" type="dll"/>
</publications>
<dependencies>
...
</dependencies>
</ivy-module>
When I do a <ivy:retrieve conf="runtime"/> after resolving the
dependencies for the firma-webapp, I always get four files instead of
one, as I would have expected by explicitly defining:
<dependency org="firma" name="firma-base" rev="latest.integration"
changing="true" transitive="false" conf="compile->default;runtime->master"/>
Whats wrong here or what am I missing?
Jan.