我一直在尝试将 java 模块 (jar) 的工件发布到 Azure Artifact,但收到错误 404。
经过一段时间的调试我已经意识到我的语义版本 https://semver.org/#spec-item-10破坏了 URL。
1.0.2-beta1+20191202
+ 表示元数据作为语义版本语法的一部分。同时,他+破坏了 Azure 创建的用于上传工件的 URL。
以下是 Azure 创建的 URL 示例:
https://pkgs.dev.azure.com/MYCOMPANY/_packaging/test/maven/v1/com/MYCOMPANY/test/1.0.22+0110-SNAPSHOT/test-1.0.22+0110000-20102.29-1.jar https://pkgs.dev.azure.com/MYCOMPANY/_packaging/test/maven/v1/com/MYCOMPANY/test/1.0.22+0110-SNAPSHOT/test-1.0.22+0110000-20102.29-1.jar'
该版本中的优点导致 404 错误发生。
看起来像是一个缺失的功能,但如果有一个解决方法,同时这个问题实际上得到了解决,我将不胜感激。
对于包含“+”的 Artifact 版本,Azure Artifact 发布失败
恐怕目前没有这样的解决方案/解决方法来解决这个问题。
如果我使用 Publish Artifact,我会得到同样的 404 错误+
在网址中。花了很长时间但没有找到此问题的任何解决方案/解决方法,直到我发现这张票 https://developercommunity.visualstudio.com/content/problem/581881/artifact-publishing-fails-when-artifact-name-conta.html:
Azure Artifacts Engineering 回复道:
Due to 我们服务的网络堆栈的技术限制, 我们不可以
目前支持 URL 路径中的 + 号。因此,我们目前不
在某些包类型中支持 SemVer 构建元数据(+后缀),例如
梅文。
如果我想继续使用 Azure Artifacts,我必须接受此技术限制。
希望这对您有帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)