Ivy
  1. Ivy
  2. IVY-1268

Valid Path does not work for Filesystem Resolver

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 2.2.0
    • Fix Version/s: None
    • Component/s: Core
    • Labels:
      None
    • Environment:

      CentOS5

      Description

      I'm using Ivy 2.2.0 in my current project. I've specified a filesystem resolver and I was playing around with how the root directory to look under for the ivy and artifact patterns is derived. Through playing around with the path, I encountered some odd/buggy behavior where I could specify a valid path but would fail to resolve the file.

      <ivysettings>
      <properties file="../../properties/path.properties"/>
      <property name="repo.dir" value="$

      {filesystem.repo.root}"/>

      <resolvers>
      <filesystem name="local" m2compatible="true">
      <ivy pattern="${repo.dir}/[organisation]/[module]/ivy.xml"/>
      <artifact pattern="${repo.dir}/[organisation]/[module]/[artifact].[ext]"/>
      </filesystem>
      </resolvers>
      </ivysettings>

      path.properties is a file generated by a script prior to building. Originally I was hardcoding the value for ${filesystem.repo.root}

      in the generating script, but I wanted to start deriving the path. When I generated the path, the resolve suddenly started failing. However, at the command line, I was able to copy the jar and ivy file from the repo manually using 'cp' and the output of the failed call to ivy:retrieve, meaning the path was valid, but the resolve was failing.

      module not found: org.slf4j#slf4j;1.6.1
      [ivy:retrieve] ==== local: tried
      [ivy:retrieve] /opt/workspace/ums/UMS/main/build/developer/../.cache/../../../lib/org/slf4j/slf4j/1.6.1/ivy.xml
      [ivy:retrieve] – artifact org.slf4j#slf4j;1.6.1!slf4j.jar:
      [ivy:retrieve] /opt/workspace/ums/UMS/main/build/developer/../.cache/../../../lib/org/slf4j/slf4j/1.6.1/slf4j-1.6.1-jar.jar

      However, a path like /opt/workspace/ums/UMS/main/build/developer/../../../lib/org/slf4j/slf4j/1.6.1/ivy.xml resolves just fine and my build works.

      The same behavior holds true if I specify the path directly in the ivy and artifact pattern, so it isn't an issue with the path.properties file.

        Issue Links

          Activity

            People

            • Assignee:
              Maarten Coene
              Reporter:
              Jonathan Williams
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development