My understanding is that <ivy:resolve/>
copies dependencies from the configured repo into the local Ivy cache (rooted under ${USER_HOME}/.ivy2
). But after looking at the task's docs, I was surprised to find that there is no resolver
attribute, like:
<ivy:resolve file="ivy.xml" conf="compile" resolver="theResolverToUse"/>
So I ask: how do you specify which resolver to use, especially if (in ivysettings.xml
), you can define 1+ resolvers? Thanks in advance.
Update:
For instance, here's a snippet of the resolver defined in my (emerging) ivysettings.xml
:
<resolvers>
<chain name="chainResolver" returnFirst="true">
<url name="urlResolver">
<ivy pattern="${ivyRepoRoot}/module_descriptors/${ivyModDescriptorPattern}"/>
<artifact pattern="${ivyRepoRoot}/artifacts/${ivyArtifactPattern}"/>
</url>
<filesystem name="localFileResolver">
<artifact pattern="${user.home}/.ivy2/local-cache/[artifact]-[revision].[ext]"/>
</filesystem>
</chain>
<sftp name="publisherResolver" user="fizz" userPassword="buzz" host="example.com">
<ivy pattern="sftp://example.com:22/usr/local/apache/htdocs/ivy/module_descriptors/${ivyModDescriptorPattern}"/>
<artifact pattern="sftp://example.com:22/usr/local/apache/htdocs/ivy/artifacts/${ivyArtifactPattern}"/>
</sftp>
</resolvers>