[
https://issues.apache.org/jira/browse/IVY-1067?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
John Gibson updated IVY-1067:
-----------------------------
Attachment: circular_dependency_bug.tgz
Here is a test case illustrating the issue.
There is a single dependency, dom4j#dom4j 1.5.2 and several exclusion requests
in the ivy file.
A single dependency exclude of icu4j, a global exclusion of tagsoup, and a
global exclusion of the StAX API.
The first two are transitive dependencies of dom4j by way of jaxen. The last
is a direct dependency of dom4j. Jaxen has a circular dependency on dom4j and
the exclusion calculations for all of its dependencies is not reliable.
If you run 'ant test' you should see that the lib directory contains icu4j and
tagsoup despite their explicit exclusion. However, you'll also notice that the
exclusion of the StAX API was successful.
Note that there is also an override to force jdom to 1.0 because the jdom b10
release on repo1.maven.org has a bad version in the POM file. It shouldn't
affect the outcome of the test.
> Exclusions not properly applied to circular dependencies
> --------------------------------------------------------
>
> Key: IVY-1067
> URL: https://issues.apache.org/jira/browse/IVY-1067
> Project: Ivy
> Issue Type: Bug
> Affects Versions: 2.0, 2.1.0-RC1
> Environment: % java -version
> java version "1.5.0_16"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b06-284)
> Java HotSpot(TM) Client VM (build 1.5.0_16-133, mixed mode, sharing)
> % ant -version
> Apache Ant version 1.7.0 compiled on August 25 2008
> Reporter: John Gibson
> Attachments: circular_dependency_bug.tgz
>
>
> Exclusion rules are not applied properly to circular dependencies.
> Specifically, in doesCallersExclude() in
> org.apache.ivy.core.resolve.IvyNodeCallers this return condition:
> if (callersStack.contains(node.getId())) {
> return false;
> }
> causes the process to abort before reaching the exclusion rules at the
> top-level module.
> I examined the source for 2.1.0 RC1, but I've experienced the same behavior
> under 2.0.0.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.