我知道,使用SNAPSHOT依赖项发布项目不是一个好习惯。
但是,我想知道,有什么办法,我们可以使用maven发布插件来发布SNAPSHOT依赖项吗?
是否有任何参数可以传递给maven发布插件,以便在发布时接受SNAPSHOT版本的依赖项?
喜欢
-Dallow.snapshots= true
答案 0 :(得分:5)
您可以考虑使用allowTimestampedSnapshots
选项release:prepare
。这显然是为了处理SNAPSHOT依赖性不可避免的用例。
但是,如果不可避免,你应该这样做。除此之外,一些Maven存储库可以配置为自动删除旧的SNAPSHOT版本。如果发生这种情况,您发布的工件最终可能会永久性地破坏依赖项。
答案 1 :(得分:3)
你为什么要这样?发布的版本应该永远不会改变。更新其中一个快照依赖项可能会破坏系统。我看到两种方法:
您可以控制依赖项的源代码,在这种情况下,我建议您完成释放这些项目的过程,尽管这是一个繁琐的过程。
如果您不控制源代码,您仍然可以重命名二进制文件并手动将其上传到您的发布服务器。即使对于您可控制的项目,您仍可能采用这种方法,但我强烈建议您不要这样做。