3

我知道,发布具有 SNAPSHOT 依赖项的项目并不是一个好习惯。

但是,我想知道,有什么方法可以让 maven 发布插件与 SNAPSHOT 依赖项一起发布?

是否有任何参数可以传递给 Maven 发布插件以在发布时接受 SNAPSHOT 版本的依赖项?

-Dallow.snapshots= true
4

2 回答 2

5

您可以考虑使用allowTimestampedSnapshots选项来release:prepare. 这显然是为了处理 SNAPSHOT 依赖项不可避免的用例而添加的。

但是只有在不可避免的情况下才应该这样做。除此之外,一些 Maven 存储库可以配置为自动删除旧的 SNAPSHOT 版本。如果发生这种情况,您发布的工件可能会以永久损坏的依赖关系告终。

于 2011-01-31T23:20:21.900 回答
3

你为什么要那个?发布的版本应该永远不会改变。更新其中一个快照依赖项可能会破坏系统。我看到两种方法:

要么您可以控制依赖项的源代码,在这种情况下,我建议您完成发布这些项目的过程,尽管这很乏味。

如果您不控制源代码,您仍然可以重命名二进制文件并将其手动上传到您的发布服务器。即使对于您控制的项目,您仍然可能会采用这种方法,尽管我强烈建议您不要这样做。

于 2011-01-31T21:14:21.080 回答