【发布时间】:2013-01-04 21:34:35
【问题描述】:
更新快照依赖项时,我无法让 Ivy 更新缓存。解析器(具有以下设置:
<url name="xxx" m2compatible="false"
checkmodified="true" changingMatcher="regexp"
changingPattern=".*-SNAPSHOT.*">
一个示例工件文件名(在 Artifactory 中)是:
my-jar-1.999-SNAPSHOT.jar
详细的 Ant 解析日志包括:
[NOT REQUIRED] com.myorg#my-module;1.999-SNAPSHOT!my-jar.jar
工件上没有 POM。
解析器位于链式解析器下方;他们都有所有相关的属性集。我已阅读 https://issues.apache.org/jira/browse/IVY-938 和 https://issues.apache.org/jira/browse/IVY-1221,包括所有 cmets 和 AFAICT(可能是错误的!)没有任何解决方法是相关的。
我是否应该放弃快照而只使用具有“integration.latest”动态版本依赖的显式版本?我担心当我们为多个主要版本进行集成构建时,这可能最终会失败。此时,我们需要将主要版本拆分到单独的存储库中,或者将主要内部版本号放在工件名称中,或者同样笨拙的东西,以使“integration.latest”工作。
【问题讨论】:
-
我看到你已经修改了这个问题...快照修改是一个特殊的 Maven 功能。您指定 1.2.3-SNAPSHOT,它会神奇地转换为具有时间戳版本号的内部存储文件:1.2.3-201301210911。查看您的存储库并查看检索实际文件所需的 URL。
-
@MarkO'Connor 该仓库的名称没有时间戳,如我上面所示:my-jar-1.999-SNAPSHOT.jar。
-
我很抱歉专注于 Maven... 它引入了快照的概念,当我认为 ivy 的“latest.release”和“latest.integration”方法在人们如何处理方面更加标准时管理他们的修订号。
标签: ivy artifactory