如何通过Azure DevOps上的NuGet将符号获取到我们的开发机?

时间:2019-05-14 18:08:17

标签: azure-devops nuget symbols

我要解决的最终方案是调试从另一个程序包引用的NuGet程序包,该程序包是我们开发并发布到Azure DevOps中的提要中的。例如。软件包A通过管道发布到Azure DevOps NuGet feed。我正在使用软件包B中的代码,并希望能够使用Visual Studio在A内调试代码。

问题是dotnet pack --include-symbols不在.nupkg中包含A的符号。相反,它将它们放入.symbols.nupkg中,dotnet push不会将它们推送到我们的DevOps供稿中。除非我明确排除.symbols.nupkg,否则会有冲突:

  

响应状态代码不表示成功:409(冲突-提要已经包含“ A 0.0.0-REDACTED”。(DevOps活动ID:A7965FB9-B458-43F9-8973-FD0B6E7F1138))。

问题有两个:

  1. 是否存在一种受支持且有据可查的方法来获取调试符号(最好是源文件)自动在Visual Studio中加载,以供CI在Azure DevOps中构建的NuGet包?
  2. 如果我想做的是正确的方法,我该如何处理.symbols.nupkg?

2 个答案:

答案 0 :(得分:0)

链接到docs @ zivkan的文档是开始的地方。 Azure DevOps符号服务器当前不支持.snupkgs。

答案 1 :(得分:0)

  

是否存在一种受支持且有据可查的方法来获取调试符号(最好是源文件)自动在Visual Studio中加载,以用于CI在Azure DevOps中构建的NuGet包?

我之前阅读过一个很棒的博客,它给出了如何使用AzureDevOps / VSTS Symbol Server调试ASP.NET Core Nuget包的详细步骤,您可以检查它是否对您有帮助:

门票:ASP.NET Core Debugging Nuget Packages with AzureDevOps | VSTS Symbol Server

  

如果我想做的是正确的方法,我该如何处理   .symbols.nupkg?

恐怕不是,我们需要使用任务Index Sources & Publish Symbols为您的源代码建立索引,并有选择地将符号发布到Package Management符号服务器或文件共享。

希望这会有所帮助。