【问题标题】:Why is my <owner> nuget tag getting overwritten?为什么我的 <owner> nuget 标记被覆盖?
【发布时间】:2019-06-04 16:42:32
【问题描述】:

在通过以下命令使用 Chocolatey (Nuget) 拉取包时,我遇到了不正确的 .nuspec 数据被覆盖的问题:choco download。没有正确更新的标签是&lt;owner&gt;

在我的内部 Artifactory 服务器上,我将下载一个包(使用 choco 下载)并编辑 .nuspec 文件。我将编辑多个标签,然后将包成功重新推送到 Artifactory 服务器。查看 Artifactory 上的 nupkg 详细信息后,将显示正确的包元数据。我可以从更新的 .nuspec 文件以及 Nupkg 信息中看到这一点。甚至&lt;owner&gt; 标签也被正确更新了。

如果我从 Artifactory Web 浏览器下载该 .nupkg,则 .nupkg 确实包含更新的 .nupsec 文件和更新的 &lt;owner&gt; 标签。这很好。

如果我通过 Chocolatey 下载包,但是,使用“choco 下载”命令,相应的 .nuspec 文件具有旧的 &lt;owner&gt;still。其他标签已更新,但预期的&lt;owner&gt; 标签未更新。

更值得注意的是,如果我更新&lt;author&gt; 标签,它也会更新&lt;owner&gt; 标签,并具有相同的值!每次使用 choco 下载时都会这样做。

在与 Chocolatey 支持交谈时,choco 下载命令基本上只是一个 Nuget 解包命令。作为 Chocolatey 命令并没有什么特别之处,Chocolatey 支持已将其排除为 Chocolatey 问题。其他 Nuget 存储库(如 Nexus)不存在此问题。我可以在多个 Artifactory 问题上复制这一点。

以前有人遇到过这种情况吗?

【问题讨论】:

  • chocolatey 是否配置为从“本地”存储库或“虚拟”存储库下载?有可能在您进行更改的本地存储库中,您将获得修改后的版本,而从聚合多个其他存储库的虚拟存储库中,您将获得原始版本
  • 好电话@DrorBereznitsky。我以前没有尝试过。我刚刚验证从我的“本地”存储库(同一台机器)下载时,问题不存在。它仅在从 Artifactory 上的“虚拟”或“远程”存储库下载时存在。

标签: nuget artifactory chocolatey nuspec nuget-spec


【解决方案1】:

如果您将包的修改版本上传到本地存储库,但从聚合多个存储库的虚拟存储库进行解析,则可能会发生这种情况。
作为第一步,请确保您要从中解析的虚拟存储库包括包含修改后的包的本地存储库。
下一步是“zap”虚拟存储库的缓存。这可以通过右键单击虚拟存储库并选择“Zap Caches”从“工件存储库浏览器”中完成。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-22
    • 1970-01-01
    • 2019-06-01
    • 1970-01-01
    • 2020-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多