ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xavier Hanin (JIRA)" <>
Subject [jira] Resolved: (IVY-881) Ivy incorrectly searches for an artifact if it contains / in the name
Date Mon, 15 Sep 2008 08:39:44 GMT


Xavier Hanin resolved IVY-881.

    Resolution: Invalid
      Assignee: Xavier Hanin

I've made a test with current trunk and it works as expected (on windows xp). I mark this
as resolved / invalid since I'm not sure it was broken before or not. The problem may be unrelated
to '/' in artifact names, it may be just a problem with the difference between include and
artifact as sub element of dependency. If you use include, the included artifact must be declared
in the dependency (it's just a way to filter artifacts). If you use 'artifact', it's a way
to add meta information to the dependency, so the artifact may not be declared. Hence here's
what is working:
* use 'artifact' with no ivy.xml for the dependency
* use 'include' with an ivy.xml for the dependency declaring the artifact you include

but using 'include' with no ivy.xml for the dependency doesn't work.

> Ivy incorrectly searches for an artifact if it contains / in the name
> ---------------------------------------------------------------------
>                 Key: IVY-881
>                 URL:
>             Project: Ivy
>          Issue Type: Bug
>          Components: Core
>            Reporter: Pavel Sher
>            Assignee: Xavier Hanin
> Yesterday (2008-Aug-11) I've build Ivy from the sources and found that Ivy cannot download
artifact with / in its name. It seems the bug can be reproduced on windows only.  
> I have the following ivy.xml:
> <?xml version="1.0" encoding="UTF-8"?>
> <ivy-module version="2.0">
>   <info organisation="org" module="module" />
>   <dependencies>
>     <dependency org="org" name="dep" rev="rev" changing="true">
>       <include name="dir/path-to-artifact" type="zip" ext="zip" matcher="glob" />
>     </dependency>
>   </dependencies>
> </ivy-module>
> I tried to debug Ivy source code, and it looks like the problem is somewhere near this
code (
> 789:     Map allArtifacts = new HashMap();
>                 for (int i = 0; i < confs.length; i++) {
>                     Artifact[] arts = md.getArtifacts(confs[i]);
>                     for (int j = 0; j < arts.length; j++) {
>                         allArtifacts.put(arts[j].getId().getArtifactId(), arts[j]);
>                     }
>                 }
> The produced Map of all artifacts contains dir\path-to-artifact instead of dir/path-to-artifact.
And because of this matcher cannot find the required artifact. In Ivy-2.0-beta2 such artifacts
were downloaded without problem.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message