本文概述
你首先需要知道的是, 不允许你编译项目的错误通常不是IDE(Visual Studio)错误, 而是项目中的某些依赖项, 例如NuGet软件包或你的软件包, 因为你可能已经手动更改了你的项目文件, 出现了问题。在这种情况下, 知道发生了什么的唯一方法是以旧的方式调试项目, 自己搜索日志。
为了在Visual Studio 2017中访问项目的日志, 你将需要执行以下步骤:
1.删除项目的.vs文件夹
在本文中, 我们的项目名称将为CefsharpExample, 这是一个非常简单的WinForms项目。为了确定项目中的错误, 你需要做的第一步是删除位于项目根目录中的隐藏的.vs文件夹。此文件夹的目的是将机器和用户特定的文件移动到中央位置, 因此, 如果需要, 它将自动重新创建。
重要
默认情况下, 你不会在Windows的文件资源管理器中看到隐藏的文件夹, 因此不要忘记检查系统中的”显示隐藏的项目”属性。
只需删除该文件夹, 然后继续下一步即可。
2.通过DCP for VS 2017启动Visual Studio
Visual Studio开发人员命令提示会自动设置环境变量, 使你可以轻松使用.NET Framework工具, 并允许你根据需要进行更改。开发人员命令提示符通常随Visual Studio的完整版或社区版一起安装。
你可以使用Windows”开始”菜单中的搜索栏快速访问它:
然后在其上运行以下说明(一个接一个):
set TRACEDESIGNTIME=true
devenv
然后, 你的命令提示符将如下所示:
并且它应该自动启动Visual Studio。一旦启动, 请开始你的项目的解决方案, 理论上该错误应该仍然存在, 现在我们需要访问日志文件。
3.搜索你的项目的.log文件
日志文件位于系统的Temp文件夹中, 通常为C:\ Users \ <用户名> \ AppData \ Local \ Temp(你可以通过在Windows的搜索菜单中键入%appdata%来快速访问该文件夹)。你需要的文件以.designtime.log结尾, 但是可能会有很多。正确的日志开头应该有项目的名称, 这将使搜索更加容易。
小费
为了增强搜索效果, 日志文件应包含项目名称作为文件名, 因此你可以使用\ AppData \ Local \ Temp文件夹中的搜索菜单。
找到文件后, 使用任何文本编辑器将其打开。在大多数情况下, 日志应提供某种提示, 以帮助你了解失败的原因。通常, 该错误可以在文件末尾找到, 对于我们而言, 该错误是以下内容:
Build FAILED.
C:\Users\sdkca\documents\visual studio 2017\Projects\CefSharpExample\packages\CefSharp.Common.55.0.0\build\CefSharp.Common.targets(4, 5):
error : CefSharp.Common will work out of the box if you specify platform (x86 / x64). For AnyCPU Support see https://github.com/cefsharp/CefSharp/issues/1714
0 Warning(s)
1 Error(s)
Time Elapsed 00:00:00.29
我们的错误是由于CefSharp的NuGet软件包中的配置错误而产生的。在你的项目中, 问题可能是类似的, 例如, 它正在寻找未安装的文件或SDK, 或者某些权限被拒绝, 等等。如在Roslin C#编译器的存储库中指定的那样, Visual Studio本身的问题, 你可能想在GitHub项目上提交一个错误, 因此Visual Studio工程师将进行调查。确保提供完整的日志, 并提供项目文件(如果可能的话), 因为它们可能都需要两者来诊断问题。
编码愉快!
评论前必须登录!
注册