[
https://issues.apache.org/jira/browse/IVY-1593?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Pedro de Carvalho Gomes updated IVY-1593:
-----------------------------------------
Environment:
Define an Ivy project with the following resolver:
{noformat}
<ibiblio name="Jcenter"
namespace="canonize"
m2compatible="true"
usepoms="true"
root="http://jcenter.bintray.com/" />
{noformat}
Create {{ivy.xml}} with the following dependency:
{noformat}
<dependency org="org.jboss" name="jboss-retro" rev="1.1.0""/>
{noformat}
After the running a first resolve task (and thus creating the cache), add the
following namespace rules:
{noformat}
<namespaces>
<namespace name="canonize">
<rule>
<fromsystem>
<src org="jboss" module="javassist"/>
<src org="org.jboss" module="javassist"/>
<src org="javassist" module="javassist"/>
<dest org="org.javassist" module="javassist"/>
</fromsystem>
</namespace>
</namespaces>
{noformat}
was:
Define an Ivy project with the following resolver:
{noformat}
<ibiblio name="Jcenter"
namespace="fixnamespace"
m2compatible="true"
usepoms="true"
root="http://jcenter.bintray.com/" />
{noformat}
Create {{ivy.xml}} with the following dependency:
{noformat}
<dependency org="org.jboss" name="jboss-retro" rev="1.1.0""/>
{noformat}
After the running a first resolve task (and thus creating the cache), add the
following namespace rules:
{noformat}
<namespaces>
<namespace name="canonize">
<rule>
<fromsystem>
<src org="jboss" module="javassist"/>
<src org="org.jboss" module="javassist"/>
<src org="javassist" module="javassist"/>
<dest org="org.javassist" module="javassist"/>
</fromsystem>
</namespace>
</namespaces>
{noformat}
> Ivy does not apply namespace rules for cached deps
> --------------------------------------------------
>
> Key: IVY-1593
> URL: https://issues.apache.org/jira/browse/IVY-1593
> Project: Ivy
> Issue Type: Bug
> Components: Core
> Affects Versions: 2.5.0-rc1
> Environment: Define an Ivy project with the following resolver:
> {noformat}
> <ibiblio name="Jcenter"
> namespace="canonize"
> m2compatible="true"
> usepoms="true"
> root="http://jcenter.bintray.com/" />
> {noformat}
> Create {{ivy.xml}} with the following dependency:
> {noformat}
> <dependency org="org.jboss" name="jboss-retro" rev="1.1.0""/>
> {noformat}
> After the running a first resolve task (and thus creating the cache), add the
> following namespace rules:
> {noformat}
> <namespaces>
> <namespace name="canonize">
> <rule>
> <fromsystem>
> <src org="jboss" module="javassist"/>
> <src org="org.jboss" module="javassist"/>
> <src org="javassist" module="javassist"/>
> <dest org="org.javassist" module="javassist"/>
> </fromsystem>
> </namespace>
> </namespaces>
> {noformat}
> Reporter: Pedro de Carvalho Gomes
> Priority: Major
>
> Ivy does not apply namespace rules to cached dependencies. Thus, making such
> rules "invisible", and potentially breaking builds and/or downloading
> duplicated dependencies.
> The issue is created by the cached the ivy file at
> {{${HOME}/.ivy2/cache/org_def/name_def/ivy-rev_def.xml}}. This file is
> created by converting from the original POM. It contains transitive
> dependencies with the wrong definitions that should be fixed with namespaces.
> After, the namespace definition is added. However Ivy won't recreate the
> {{ivy-rev_def.xml}}, and will resolve the transitive dependency with the
> wrong namespace.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)