【发布时间】:2013-02-07 03:07:07
【问题描述】:
我的理解是 <ivy:resolve/> 将依赖项从配置的 repo 复制到本地 Ivy 缓存中(根在 ${USER_HOME}/.ivy2 下)。但是看了task's docs之后,惊讶的发现竟然没有resolver的属性,比如:
<ivy:resolve file="ivy.xml" conf="compile" resolver="theResolverToUse"/>
所以我问:你如何指定使用哪个解析器,特别是如果(在ivysettings.xml),你可以定义 1+ 个解析器?提前致谢。
更新:
例如,这是我的(新兴)ivysettings.xml 中定义的解析器的 sn-p:
<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>
【问题讨论】:
标签: java ivy dependency-management