You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by BAFFOUR-AWUAH FRANK <ba...@yahoo.com> on 2013/12/27 11:46:27 UTC

Can't get ivy to resolve transitive dependencies of local modules

For days I have tried and simply failed to get apache ivy to resolve the dependencies of dependencies I declare in my ivy.xml, when the root dependencies are from my local repository. Root dependencies from my public repository (maven) work well, and even work when I edited one of the ivy.xml to point to a dependency on a module from my local repository. But transitive dependency resolution for my local repository will just not work.
I checked the resolved ivy.xml for one of my local modules in the cache, and the dependency section had been wiped out!
Is there something I have to do?

This is my ivysettings.xml file:

<ivysettings>
  <settings defaultResolver="default"/>
  <caches useOrigin="true"/>
  <include url="${ivy.default.settings.dir}/ivysettings-public.xml"/>
  <include url="${ivy.default.settings.dir}/ivysettings-shared.xml"/>
  <include file="${ivy.default.ivy.user.dir}/settings/ivysettings-local.xml"/>
  <include url="${ivy.default.settings.dir}/ivysettings-main-chain.xml"/>  
  <include url="${ivy.default.settings.dir}/ivysettings-default-chain.xml"/>
</ivysettings>

And this is my ivysettings-local.xml file:

<ivysettings>
  <property name="ivy.local.default.root"
        value="${ivy.default.ivy.user.dir}/local" override="false"/>
  <property name="ivy.local.default.ivy.pattern"
        value="[organisation]/[module]/[revision]/[type]s/[artifact].[ext]" override="false"/>
  <property name="ivy.local.default.artifact.pattern"
        value="[organisation]/[module]/[revision]/[type]s/[artifact].[ext]" override="false"/>
  <resolvers>
    <filesystem name="local">
      <artifact 
        pattern="${ivy.local.default.root}/[organisation]/[module]/[revision]/[type]s/[artifact]-[revision].[ext]" />
    </filesystem>
  </resolvers>
</ivysettings>

 Thanks in advance.