You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure DevOps经典管道NuGet无法还原最新包版本求助

解决NuGet持续还原旧版本包的问题

可能的原因及排查步骤

1. 检查项目版本约束配置

  • 打开项目文件(.csproj)或packages.config,确认包版本是否写死为.9,比如:
    <PackageReference Include="YourPackageName" Version="1.0.0.9" />
    
    或者版本范围限制未包含.10,比如Version="[1.0.0.0,1.0.0.9]",这种情况下NuGet只会拉取范围内的最高版本。
  • 若使用Directory.Packages.props统一管理版本,检查其中的版本配置是否锁定了旧版本。

2. 清理Azure DevOps代理端缓存

禁用本地缓存仅作用于客户端,构建代理的服务器端可能仍保留缓存:

  • 找到代理工作目录(默认是_work文件夹),删除_temp和_packages下的目标包文件;
  • 或在构建管道中添加前置步骤,执行缓存清理命令:
    nuget locals all -clear
    

3. 验证Artifacts包状态与版本排序

  • 在Azure DevOps Artifacts中确认.10版本为已发布状态,未被标记为“已取消发布”;
  • 本地执行命令查看源内版本列表:
    nuget list YourPackageName -Source <你的Artifacts源地址>
    
    确认.10版本存在且排序正确。

4. 检查NuGet锁定文件与配置

  • 若项目生成了packages.lock.json,文件中可能记录了.9版本,还原时会优先使用锁定版本。可删除该文件后重新还原,或在还原步骤添加--no-lock参数跳过锁定;
  • 查看代理上的NuGet.Config文件(路径通常为C:\Users\<代理用户>\AppData\Roaming\NuGet或代理工作目录下),确认是否设置了dependencyVersion为Lowest等限制版本的配置。

5. 升级NuGet版本

当前使用的NuGet 6.7.0.127可能存在版本排序相关bug,尝试升级至最新稳定版(如6.x后续版本或7.x系列)后重新测试。


内容的提问来源于stack exchange,提问作者cbkinor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 01:27:07