[ https://issues.apache.org/jira/browse/IVY-1475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16048641#comment-16048641 ]
jaikiran pai commented on IVY-1475: ----------------------------------- [~pmatignon], this has now been implemented in upstream master of Ivy to throw a more explicit error if Ivy can't determine a common base directory for the cache artifacts. If you are interested, you can give it a try by downloading the nightly snapshot from Ivy's next nightly build (around 6 hours from now), which can be obtained from here https://builds.apache.org/view/A/view/Ant/job/Ivy-NightlyDistribution/lastSuccessfulBuild/ > ivy:cachefileset fails with String index out of range on Windows > ---------------------------------------------------------------- > > Key: IVY-1475 > URL: https://issues.apache.org/jira/browse/IVY-1475 > Project: Ivy > Issue Type: Bug > Components: Ant > Affects Versions: 2.4.0-RC1 > Environment: Windows > Reporter: Patrice Matignon > > On Windows, the ant task <ivy:cachefileset /> can fail with the stack trace > below, when the resolve includes artifacts located in separate directories in > separate drives (e.g. c:\ivy2/cache/... ; d:\ivy2\cache ). > The underlying issue is that cachefileset is an ant fileset and as such it > requires a base dir. > Nevertheless, the implementation for this ant task doesn't handle this > scenario properly: it attempts to find the common base dir for all the > resolved artifacts, except that every time it runs into a conflicting > artifacts, it just loses the information and ends up reporting an invalid > base dir, which causes a fatal StringIndexOutOfBoundsException later in that > task. > A sample stacktrace (the actual reported index varies): > C:\src\trunk\build.xml:839: impossible to build ivy cache fileset: > java.lang.StringIndexOutOfBoundsException: String index out of range: -24 > at java.lang.String.substring(String.java:1937) > at java.lang.String.substring(String.java:1904) > at org.apache.ivy.ant.IvyCacheFileset.getPath(IvyCacheFileset.java:114) > at org.apache.ivy.ant.IvyCacheFileset.doExecute(IvyCacheFileset.java:82) > at org.apache.ivy.ant.IvyTask.execute(IvyTask.java:271) -- This message was sent by Atlassian JIRA (v6.4.14#64029)