NuGet符号库布局
NuGet Symbol文件显示为NuGet存储库结构的一部分,如下所示。
├──.symbols / serilog。││GUID_Name文件夹││pdb├──
发布NuGet符号包到Artifactory
JFrog平台支持发布和自动索引供调试器使用的Symbol包。
先决条件
- 创建NuGet符号包(.snupkg).有关更多信息,请参见创建符号包。
设置本地存储库
本地存储库使您能够部署NuGet符号(.snupkg)包。Artifactory计算所有Symbol包的元数据,并对它们进行索引,以允许用户通过Visual Studio调试器下载Symbol文件。
创建一个NuGet Symbol本地存储库:
- 导航到政府模块,转到存储库|存储库|当地的|新建本地存储库。
- 选择NuGet随着包类型。
设置虚拟存储库
Artifactory Virtual Repository聚合来自本地和远程存储库的包。
这允许您从为虚拟存储库定义的单个URL访问本地托管的NuGet Symbol包和远程代理的NuGet Symbol文件。
创建虚拟NuGet存储库。
- 在政府模块,在仓库|仓库|虚拟.lick新建虚拟存储库并设置NuGet成为它的包类型。
- 控件下包含的基础本地和远程NuGet Symbol存储库存储库部分。
设置远程符号服务器存储库
您可以通过JFrog平台远程存储库代理远程Symbol Server。一个远程存储库Artifactory中定义的作为在远程URL(例如)上管理的注册中心的缓存代理http://symbols.nuget.org/download/symbols).
从远程存储库请求的符号文件按需缓存。您可以从远程存储库缓存中删除下载的Symbol文件;但是,您不能手动将Symbol包推送到远程NuGet存储库。
要定义要代理的远程存储库作为远程符号服务器,请遵循以下步骤:
- 从政府模块,选择仓库|仓库|远程。
- 点击新建远程存储库并选择NuGet从选择包类型对话框中。
- 在Basic选项卡中,设置库的关键属性中指定远程注册中心的URLNuGet符号服务器URL字段。请注意,默认设置为http://symbols.nuget.org/download/symbols。
配置NuGet命令行作为Symbol Server工作
除了构建和创建NuGet包(.nupkg
), NuGet客户端还支持创建关联的Symbol包(.snupkg
或。symbols.nupkg
),其中包含NuGet包的所有相关符号文件。Symbol包可以被推送到Symbol Server,在那里Symbol文件可以被Visual Studio调试器索引和使用。
Symbol包结构类似于NuGet包,但包含Symbol文件而不是源文件。
配置NuGet命令行。
- 在JFrog平台中,导航到应用模块|工件|工件。
- 选择您创建的NuGet存储库,
- 选择帮我介绍。
- 在配置选项卡,设置NuGet存储库以针对NuGet客户端工作。
- 将以下行添加到NuGet.config文件。
- 在部署选项卡,从以下推送选项中进行选择。
将NuGet包与其相关的Symbol包一起推送
当你运行nuget推
命令,如果同一目录中存在Symbol包,则该Symbol包将被自动推送到相同的位置。
如下示例所示。Nuget push mypackage.1.0.0nupkg-Source ArtifactoryNuGetV3
只推送NuGet Symbol包
当你运行nuget推
命令时,您可以通过添加` `来决定只推送Symbol包。年代的前缀nupkg
字符串。
如下示例所示。Nuget push mypackage.1.0.0年代nupkg -Source ArtifactoryNuGetV3
查看单个符号包信息
将Symbol包部署到Artifactory后,可以查看已索引的Symbol文件。在工件浏览,选择你的NuGet库然后向下滚动以找到并选择要检查的符号文件。
在Visual Studio中调试符号文件
Visual Studio和其他调试工具匹配程序集和PDB文件的方法是使用组装散列。该散列存储在。dll
和.pdb
文件和必须匹配,调试和源代码步骤才能工作。
当一个.nupkg
包含.pdb
文件,Visual Studio将不联系MyGet下载符号和源代码。当尝试使用这种类型的包进行调试时,Visual Studio将找到.pdb
而不是通过MyGet来下载它,因此将无法进入代码。
先决条件
- 在Visual Studio中,在Tools | Options(或Debug | Options) | Debugging | General,清除只启用我的代码字段。
- 将Artifactory设置为Visual Studio中的符号服务器,执行以下命令工具|选项|调试|符号并添加虚拟或本地存储库URL路径。
调试Artifactory中的Symbol文件:
- 运行Visual Studio调试器并输入凭据。
登录后,调试器扫描本地缓存,然后转到Artifactory中的虚拟存储库,如下面的示例所示。 - 在Visual Studio解析符号之后,继续调试已部署的符号文件。