【问题标题】:Azure Devops private build agent failing at nuget restore taskAzure Devops 私有构建代理在 nuget 还原任务中失败
【发布时间】:2020-09-14 14:46:51
【问题描述】:

Azure DevOps 私有构建代理正在尝试下载旧的 dotnet 版本包作为 Nuget 还原任务 的一部分,这些包不再在项目中使用,并且在特定管道中失败只要。对于相同的 nuget 还原任务,相同的构建代理在任何其他管道中都没有问题。我的问题是,特定管道是否可以单独缓存 nuget 还原并因此而失败..?

【问题讨论】:

  • 您能否分享管道中哪个特定任务失败以及错误消息?
  • 已经提到:Nuget 恢复任务 并且错误消息说:##[error]The nuget command failed with exit code(1) and error(Errors in packages.config项目无法找到包'Edge.js'的版本'9.3.0'。我们不再使用这个版本的edge.js,但不知何故它正在尝试下载旧包,而这个包版本在nuget repo中不存在,所以它失败了.
  • 这个问题怎么样?下面的答案是否解决了您的问题,如果是,您可以 Accept it as an Answer ,这样它可以帮助遇到相同问题的其他社区成员,我们可以存档这个帖子,谢谢。

标签: c# build azure-devops continuous-integration azure-pipelines


【解决方案1】:

Azure Devops 私有构建代理在 nuget 还原任务中失败

根据您评论中的错误信息:

packages.config 项目中的错误无法找到版本“9.3.0”的 包'Edge.js'。我们不再使用这个版本的 edge.js 但不知何故,它试图下载旧包和这个包 nuget repo 中不存在版本

nuget 正在恢复一个你不再使用的 nuget 包,并且这个包版本在 nuget repo 中不存在,所以它失败了。

要解决此问题,我们需要从项目中删除该包。如果您有packages.config,请删除其中的以下项目:

<package id="Edge.js" version="9.3.0" targetFramework="net461" />

如果您的项目是.net core,您需要打开您的项目文件 .csproj 文件并删除其中的以下项目:

<PackageReference Include="Edge.js" Version="9.3.0" />

如果您已经这样做了,那么您需要检查与当前管道关联的 repo 和分支,以确认 关联 repo 分支上的源代码已更新

如果以上答案没有解决您的问题,请分享有关您的构建定义和项目中的包信息的更多信息。

希望这会有所帮助。

【讨论】:

  • 其实你的回答帮助我找到了解决方案。我在 ADO 管道中签出源代码之前激活了源代码和输出目录的清理,这解决了这个问题,所以我猜以前它是在过时的代码上运行任务。
猜你喜欢
  • 2021-08-09
  • 2020-09-28
  • 1970-01-01
  • 1970-01-01
  • 2018-08-31
  • 2020-10-18
  • 1970-01-01
  • 1970-01-01
  • 2020-01-09
相关资源
最近更新 更多