我要解决的最终方案是调试从另一个程序包引用的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))。
问题有两个:
答案 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符号服务器或文件共享。
希望这会有所帮助。