Ivy is resolving private dependencies as well
---------------------------------------------
Key: IVY-674
URL: https://issues.apache.org/jira/browse/IVY-674
Project: Ivy
Issue Type: Bug
Components: Core
Affects Versions: 2.0.0-beta-1
Reporter: Maarten Coene
Priority: Critical
I don't know exactly what the problem is, but it seems that Ivy is resolving
the dependencies from private configurations as well.
I have the following output on my console when resolving my project.
{code}
[ivy:resolve] :: resolving dependencies :: LCMB#fao;[EMAIL PROTECTED]
[ivy:resolve] confs: [default, client, impl, testapi, compile, client-compile,
test, runtest]
[ivy:resolve] [2.8.4] LCMT#commons;2.+
[ivy:resolve] [1.3.1] LCMT#daohelper;1.+
[ivy:resolve] [3.2.1] LCMT#parametermanager;3.+
[ivy:resolve] [1.0.3] LCMB#sparadmwebservice;1.+
[ivy:resolve] [1.2.0] LCMT#commons-webservice;1.+
[ivy:resolve] [2.0.10] LCMT#openutm;2.+
[ivy:resolve] [1.1.0] LCMT#profilemanager;1.+
[ivy:resolve] [4.4.0] LCMT#logmanager;4.+
[ivy:resolve] [3.4.0] LCMT#openutm;3.+
[ivy:resolve] [4.3.1] LCMT#papyrus;4.+
[ivy:resolve] [10.1.3.3] J2EE#ejb30;10.1.3.+
[ivy:resolve] [10.1.3.3] J2EE#persistence;10.1.3.+
[ivy:resolve] [10.1.3.3] J2EE#mail;10.1.3.+
[ivy:resolve] [2.1.0] OTHER#commons-lang;2.+
[ivy:resolve] [2.0.0] LCMT#commons-test;2.+
[ivy:resolve] [10.1.3.3] J2EE#toplink-essentials;10.1.3.+
[ivy:resolve] [10.1.3.3] J2EE#ejb;10.1.3.+
[ivy:resolve] [10.1.3.3] J2EE#jta;10.1.3.+
[ivy:resolve] [10.1.3.3] J2EE#jaxrpc-api;10.1.3.+
{code}
As you can see, the "openutm" dependency is resolved twice: once for the 2.x
branch, and another time for the 3.x branch.
However, the only place where I have defined a dependency on the openutm 2.x
branch is in the commons dependency. And as you can see, this is defined in a
private configuration!!
{code}
<ivy-module version="1.0">
<info organisation="LCMT" module="commons" revision="2.8.4"
status="release" publication="20070313105450"/>
<configurations>
<conf name="default" description="For default usage."/>
<conf name="j2ee" extends="default" description="For usage
inside an application server."/>
<conf name="standalone" extends="default" description="For
usage in a standalone application (e.g. batch)."/>
<conf name="compile" extends="*(public)" visibility="private"
transitive="false"/>
<conf name="test" visibility="private" transitive="false"/>
<conf name="runtest" extends="test,compile"
visibility="private"/>
<conf name="minimal" extends="default" description="For minimal usage,
e.g. in the client API of a system."/>
</configurations>
<dependencies
defaultconfmapping="runtest->standalone(default);default,compile,test->default;standalone->[org=LCMB]client(default),[org!=LCMB]standalone(default);%->#(default);"
confmappingoverride="true">
<!-- J2EE dependencies -->
<dependency org="J2EE" name="ejb" rev="" conf="compile"/>
<dependency org="J2EE" name="jms" rev="" conf="standalone"/>
<dependency org="J2EE" name="jta" rev="" conf="test"/>
<!-- technical dependencies -->
<dependency org="LCMT" name="daohelper" rev="1.+"
conf="j2ee;standalone"/>
<dependency org="LCMT" name="openutm" rev="2.+" conf="compile"/>
<dependency org="LCMT" name="parametermanager" rev="3.+" conf="j2ee"/>
<dependency org="OTHER" name="commons-beanutils" rev="1.7.0"
conf="compile"/>
<dependency org="OTHER" name="commons-discovery" rev="0.2"
conf="j2ee;standalone"/>
<dependency org="OTHER" name="commons-logging" rev="1.0.3"
conf="default"/>
<dependency org="OTHER" name="commons-lang" rev="2.0.0" conf="default"/>
<dependency org="OTHER" name="commons-validator" rev="1.1.4"
conf="j2ee;standalone"/>
<dependency org="OTHER" name="jakarta-regexp" rev="1.4" conf="default"/>
<!-- Test dependencies -->
<dependency org="LCMT" name="commons-test" rev="1.+" conf="test">
<exclude module="commons"/>
</dependency>
<dependency org="OTHER" name="junit" rev="3.8.1" conf="test"/>
<dependency org="OTHER" name="mockejb" rev="0.5" conf="test"/>
<dependency org="OTHER" name="mockobjects" rev="0.09" conf="test"/>
<dependency org="OTHER" name="dbunit" rev="2.1.0" conf="test"/>
<dependency org="OTHER" name="ojdbc" rev="9.2.0.5" conf="test"/>
</dependencies>
</ivy-module>
{code}
It seems to me that for some reason, Ivy forgets the exact configuration for
the openutm dependency, because the resolve report contains this:
{code}
<module organisation="LCMT" name="openutm"
resolver="tcomp-repository">
<revision name="2.0.10" status="release"
pubdate="20060519103452" resolver="tcomp-repository"
artresolver="tcomp-repository" evicted="latest-revision" evicted-reason=""
downloaded="false" searched="true" default="false" conf="default" position="-1">
<evicted-by rev="3.4.0"/>
<caller organisation="LCMT" name="commons"
conf="default" rev="2.+" callerrev="2.8.4"/>
<artifacts>
</artifacts>
</revision>
<revision name="3.4.0" status="release"
pubdate="20071003093128" resolver="tcomp-repository"
artresolver="tcomp-repository" downloaded="false" searched="true"
default="false" conf="default" position="23">
<caller organisation="LCMT" name="commons"
conf="default" rev="2.+" callerrev="2.8.4"/>
<caller organisation="LCMB" name="fao"
conf="impl" rev="3.+" callerrev="[EMAIL PROTECTED]"/>
<artifacts>
<artifact name="openutm" type="lib"
ext="jar" status="no" size="131176">
<origin-location
is-local="true"
location="C:\working\repository\commons\lcm\openutm\openutm-3.4.0\lib\openutm-3.4.0.jar"/>
</artifact>
<artifact name="openutm" type="src"
ext="zip" status="no" size="116680">
<origin-location
is-local="true"
location="C:\working\repository\commons\lcm\openutm\openutm-3.4.0\src\openutm-3.4.0-src.zip"/>
</artifact>
</artifacts>
</revision>
</module>
{code}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.