NuGet导致Azure管道问题

NuGet导致Azure管道问题,nuget,azure-pipelines,Nuget,Azure Pipelines,不是每次,但我经常收到##[error]nuget命令失败,退出代码(1)和错误(NU1102:找不到版本为(>=1.0.5)的包MyPackage) 在my Azure管道构建中(不同的软件包和版本): 包肯定存在,因为它在几分钟前刚刚构建,我可以在工件提要中看到它: 这是我的管道: 该项目由多个包组成,因此这开始变得非常不方便。如果我尝试使用不同的构建代理,我最终会找到一个可以工作的构建代理,但管道应该更容易操作。据我所知(或猜测),Nuget正在缓存提要的index.json。我能找

不是每次,但我经常收到
##[error]nuget命令失败,退出代码(1)和错误(NU1102:找不到版本为(>=1.0.5)的包MyPackage)
在my Azure管道构建中(不同的软件包和版本):

包肯定存在,因为它在几分钟前刚刚构建,我可以在工件提要中看到它:

这是我的管道:


该项目由多个包组成,因此这开始变得非常不方便。如果我尝试使用不同的构建代理,我最终会找到一个可以工作的构建代理,但管道应该更容易操作。据我所知(或猜测),Nuget正在缓存提要的index.json。我能找到的唯一其他与此相关的问题专门发生在人们的本地环境中。是否有某种方法让Nuget正确检查包是否存在?

Nuget会将每个提要上可用的包的版本缓存30分钟,因此该包最近发布如果比这更糟,而且这台机器在过去30分钟内已经恢复了包的不同版本,那么这将是一个问题


您可以在还原之前运行
dotnet numget locals http cache--clear
numget.exe locals http cache--clear
,这将删除numget的http缓存。

1.不确定问题的真正原因,但如果清理缓存有助于解决问题,则只需在
还原任务中启用此选项即可。

2.此外,有时
包未找到错误
可能与Devops中的提要权限有关。Go Artifacts=>custom feed=>右角的提要设置:


确保您的构建服务可以访问该提要。

谢谢您的回答-这是最佳做法还是在30分钟内推送并使用包是不寻常的?我没有任何数据,以防您需要基于证据的响应。但我的直觉是,在包发布后30分钟内使用包是非常不寻常的。不是吗包作者和消费者之间通常存在脱节,因此消费者通常不会在发布包的30分钟内发现包。