Visual Studio尝试从Z:\ Builds \ work加载FakeItEasy符号

时间:2015-09-03 09:12:36

标签: visual-studio nuget debug-symbols fakeiteasy

我今天在Visual Studio中使用FakeItEasy运行单元测试。我离线了,发现以下符号加载正在发生并需要很长时间:

FakeItEasy symbol loading

我的问题是,路径Z:\Builds\work\...来自何处以及为什么Visual Studio会尝试从该路径加载符号。可能是这条路径对应于构建二进制文件的CI吗?如果是这样,那么库的维护者应该修复,还是我必须在本地配置的东西?我正在使用我通过NuGet获取的FakeItEasy 1.25.2二进制文件。

我知道您可以禁用符号加载(例如see this question),但实际上我希望尽可能加载符号。

2 个答案:

答案 0 :(得分:1)

是的,Z:\Builds\work\…TeamCity builds FakeItEasy

的路径

我不是一个大符号用户,所以我不确定你想要什么"修复"。为什么要加载符号,在这种情况下你会期望什么样的行为? 如果我们push the symbols to SymbolSource.org您仍然需要在线访问它们,不是吗?

你能举例说明你喜欢的NuGet包吗? 它在你的情况下表现如何?

答案 1 :(得分:1)

可以为调试配置和发布配置构建PDB,并且通常最好将它们保留用于调试目的。 FakeItEasy 或任何其他DLL或EXE,包含在编译期间它所在的PDB文件的完整路径。如果该路径是DLL(或EXE)的一部分,Visual Studio将尝试从那里加载符号。

要查看该信息,请获取DebugDir并运行debugdir <path to>\FakeItEasy.dll。或者,在任何十六进制编辑器中,搜索pdb

您将找到PDB的完整路径以及其他一些信息。由于您不是构建DLL的人,因此您的磁盘上不存在PDB,您需要从符号服务器下载它。

Sourforge clone of DebugDir包含支持命令行参数clean,可以删除调试信息。如果要删除访问不存在的Z:驱动器的Visual Studio,可以删除PDB文件的路径。