繁体   English   中英

Nuget 带有 ARTifactory 的 Visual Studio 中的符号服务器不工作

[英]Nuget Symbol Server in Visual Studio with ARtifactory is not working

我已经设置了 Artifactory 并上传了一些 (s)nupkg 包。 然后我按照文档中的描述添加了人工提要。 https://jfrog.com/knowledge-base/artifactory-how-to-configure-artifactory-as-symbol-server-and-integrate-with-visual-studio/

这个 nuget 包可以按预期从 artifactory 下载,并且一切正常。 但出于某种原因,我似乎无法下载 pdb 符号。

当我调试我的代码并查看模块选项卡时,我可以看到没有加载符号。 在日志中我可以找到 HTTP_STATUS_BAD_METHOD 错误:

SYMSRV: HTTPGET: /artifactory/api/nuget/v3/etm-nuget-local-release/ETM.WCCOA.Basics.pdb/6264D37419404FE5A4A845AF52F44612ffffffff/ETM.WCCOA.Basics.pd_ SYMSRV: HttpQueryInfo(HTTP_QUERY_CONTENT_LENGTH): 800C2F76 - ERROR_HTTP_HEADER_NOT_FOUND SYMSRV: HttpQueryInfo:80190195 - HTTP_STATUS_BAD_METHOD SYMSRV:结果:0x80190195

如果我将字符串复制到我的浏览器中并像这样添加人工服务器的地址: https://artifactory.etm.at:8445/artifactory/api/nuget/v3/etm-nuget-local-release/ETM.WCCOA .Basics.pdb/6264D37419404FE5A4A845AF52F44612ffffffff/ETM.WCCOA.Basics.pdb

我可以下载 pdb,然后手动将其添加到模块中,一切都按预期进行。 因此,从 artifactory 自动下载工作室似乎存在问题。 我不知道是什么原因造成的,但身份验证应该不是问题,因为我也用我的管理员帐户尝试过,正常的 nuget 包没问题

如果缓存中不存在符号文件,VS 调试器会尝试以 3 种不同的方式/格式下载它:

  1. Artifactory 支持的实际符号文件(.pdb 扩展名)。 在您的情况下(因为它在您的浏览器中适用于您),请求路径为:ETM.WCCOA.Basics.pdb/6264D37419404FE5A4A845AF52F44612ffffffff/ETM.WCCOA.Basics.pdb
  2. 来自 Artifactory 当前不支持的指针文件(.ptr 扩展名)。 在您的情况下,请求路径为:ETM.WCCOA.Basics.pdb/6264D37419404FE5A4A845AF52F44612ffffffff/file.ptr
  3. 来自压缩文件(.pd_ 扩展名),这在 Artifactory 中也不支持。 在您的情况下(与您在错误部分的问题中添加的相同),请求路径为:ETM.WCCOA.Basics.pdb/6264D37419404FE5A4A845AF52F44612ffffffff/ETM.WCCOA.Basics.pd_

调试器无法使用第二种 (.pd_) 或第三种 (file.ptr) 格式(即使使用其他符号服务器,例如 Nuget.org)下载所需的符号文件是很常见的,但它应该尝试使用第一种格式下载符号文件,这与使用浏览器手动为您工作的请求相同。

你能从调试器中添加完整的 output 吗? 或者,您能否检查您的“artifactory-request.log”,您看到哪些请求包含“/artifactory/api/nuget/v3/etm-nuget-local-release/ETM.WCCOA.Basics.pdb/6264D37419404FE5A4A845AF52F44612ffffffff/” ? 这些细节会很有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM