似乎没有ivy:unpublish任务(例如,请参见此处)。
所以,我认为应该在文件系统级别手动或通过删除~/.ivy2/local子文件夹的Ant任务执行未发布?(当目标是从本地常春藤回购取消发布时)。
我很惊讶您接受了马克的回答,因为 AFAICT 与您的用例无关,它与您的本地存储库有关 - 即您系统上的私有存储库。他的回答仅与共享存储库有关。
我怀疑 Ivy 有一个用例很常见。一位开发人员正在临时从事两个项目,其中一个项目依赖于另一个项目。当他们在做这项工作时,他们将上游项目的 SNAPSHOT 发布到他们的本地存储库,以便下游项目“看到”他们的更改。当开发人员完成这项任务后,他们将更改签入到源代码控制中,然后想要“重新加入组”并获取上游项目的最新 SNAPSHOT 依赖项。此时,他们希望从本地存储库中“取消发布”上游项目,以便他们继续使用组中其他开发人员的更改。
对于它的价值,另请参阅2006 年的Ivy Jira 问题。
正如我在几周前的评论中指出的那样,我怀疑存在一些我不知道的最佳实践,这使得这没有实际意义。任何人?
不,ivy 不支持取消发布操作。同样 Maven也不支持这样的操作。
不确定我是否理解用例。当一个人“发布”内容时,以后删除它通常是一个非常糟糕的主意……为什么?
话虽如此,有反对的论据。我建议阅读以下来自 sonatype 的优秀博客文章: