Visual Studio 2015 project builds failed but no errors

My project builds all fail but I'm not shown any errors. I tried cleaning and rebuilding, that didn't work.

I changed the MSBuild output verbosity to 'Diagnostic' hoping it would help me identify the problem and now I'm stuck. Here's what the output looks like:

1>Project 'ProjectMM.Data.Models' is not up to date. Input file 'C:\Projects\ProjectMM\ProjectMM.Data.Models\ProjectMM.Data.Models.csproj' is modified after output file 'C:\Projects\ProjectMM\ProjectMM.Data.Models\bin\Debug\ProjectMM.Data.Models.pdb'.
All packages are already installed and there is nothing to restore.
1>------ Build started: Project: ProjectMM.Data.Models, Configuration: Debug Any CPU ------
2>Project 'ProjectMM.Data' is not up to date. Input file 'C:\Projects\ProjectMM\ProjectMM.Data\ProjectMM.Data.csproj' is modified after output file 'C:\Projects\ProjectMM\ProjectMM.Data\bin\Debug\ProjectMM.Data.pdb'.
2>------ Build started: Project: ProjectMM.Data, Configuration: Debug Any CPU ------
3>Project 'ProjectMM' is not up to date. Input file 'c:\projects\projectmm\projectmm\app_start\bundleconfig.cs' is modified after output file 'C:\Projects\ProjectMM\ProjectMM\bin\ProjectMM.pdb'.
3>------ Build started: Project: ProjectMM, Configuration: Debug Any CPU ------
========== Build: 0 succeeded, 3 failed, 0 up-to-date, 0 skipped ==========
75280 次浏览

我一直看到 VS2015的常规实例报告“构建失败”,但在错误窗口中没有显示任何错误。从一个古老的命令行背景出发,我最终查看了输出窗口。输出窗口显示编译器报告错误,但是这些错误没有被捕获到错误窗口。我从未在 VS2013下看到这个问题。

通常关闭 VS 和重新开放它并没有清除这种情况。(在 VS2013中,这是一种常见的方法,可以将 XAML 智能感知抛在脑后,使其停止关注已经修复的“错误”。)

So far this has always been related to compilation errors in a XAML page CS file. I can't remember seeing it in a non-page CS file.

直到有人决定去检查输出窗口,像在错误窗口中智能感知报告无效的 XAML 对象引用,但是没有编译器错误显示在错误窗口中可以得到非常混乱,因为它“出现”就像是智能感知报告 XAML 错误。但事实并非如此。XAML 错误只是 CS 文件编译失败但在错误窗口中没有报告错误的症状。

I have had the same problem and closing and re-opening Visual Studio clears it up.

我也试过清洁的解决方案和清洁失败了。

也许在其他情况下,这并不能解决问题,但在我的情况下,重新启动已经为我解决了这个问题。

检查所有的项目框架版本,并确保它们都是相同的,或者至少项目 A 在项目 B 的时候不会引用项目 B。NETFramework 版本更高。

For me this issue was related to a custom CodeAnalysis ruleset setting "包括所有".

编译器似乎注意到了这种设置:

  <IncludeAll Action="Error" />

但是 IntelliSense 在 Rule Id 上采用了默认的 ACTION,即“警告”。这可以解释@RobertHarvey 看到的行为,在@RobertHarvey 中,通过 Build Only 过滤输出,显示为 ERROR,但如果通过 Intellisene Only 过滤,则显示为 警告。默认的 Build + Intellisense 过滤输出似乎是不确定的!

我的解决方案是明确地调用我想作为警告的规则。

  <Rules AnalyzerId="Microsoft.CodeAnalysis.CSharp" RuleNamespace="Microsoft.CodeAnalysis.CSharp">
<Rule Id="CS0618" Action="Warning" />
</Rules>

这可能是 Intellisense 没有观察到 包括所有选项的问题

我所做的(毕竟上面所有,它仍然不工作)是通过所有的垃圾箱文件夹,并清除他们所有(即参考项目太)。

这招对我管用,希望对你也管用。

It's possible that you're not seeing all the build errors.

通过将“ Messages”图标后面的下拉列表从“ Build + Intellisense”更改为“ Build Only”,您将能够看到构建过程中抛出的未被 Intellisense 检测到的错误。请看下面的截图:

Build

当您引用不同的。Net 框架版本项目(在我的例子中是 v4.5.2 vs v4.5)。纠正这个会解决你的问题。

This can also happen when migrating a project to Visual Studio 2015 with an older Framework. Check your Warnings in your Error List. You may see something like project is currently .NET version 2.0 and requires .NET 3.5 or higher. If you find a similar warning go to your project's properties and target the required .NET Framework.

我遇到了这个问题,结果是我有一个指向一个空名称空间的 using。删除 using子句解决了这个问题

删除隐藏的 .vs文件夹为我工作的 VS2015。

(Note that this is where the SUO files live now)

请检查警告。有时构建失败也是因为某些警告。

我在 VS2015更新3 RC 和 Xamarin (. Forms 共享项目)中遇到了这个问题。
编译器不停止,错误只显示在输出窗口中。
这只适用于 Xamarin 项目(使用 VB.NET 项目的所有工作都与预期一样) ..。
为了找出问题的原因,我在 VS 中更改了 Build Output:
- 菜单“工具-选项”
从左边的面板: “项目和解决方案: 建立和运行”:
- 将“ MSBuild 输出详细度”从“最小”更改为“诊断”

完成此操作后,编译器已停止,并显示错误。
之后,我将选项从“诊断”设置回“最小”(就像以前一样) ,并且... 它也适用于“最小”(当然,我还重新启动了 VS) ..。

So.. it seems (at least im my case) that only to change (touch) the setting (MSBuild Output Verbosity") has solved the problem and that this is a bug in VS and/or the Xamarin integration Software...

我把计算机上的时区改成 + 5:30,然后又改回 -5:00,这让 VS 感到困惑。当我重新启动 VS 时,它又能正常工作了。

摘自 这个答案

Compilation failed, no errors were showed in the output window.

为了找出问题的原因,我已经更改了 Build 以 VS 计算的产出: - 菜单“工具-选项” 从左边的面板: “项目和解决方案: 建立和运行”: - 将“ MSBuild 输出详细度”从“最小”更改为“诊断”

After doing that, I found the real reason which was in fact a mistake with dependency projects. I project that I was depending on was built for different framework (newer) than mine. Thus creating the issue. The errors was only outputed when I put the Output Verbosity to Diagnostic

对我来说,这是一个流氓附属财产。问题不一定是我看不到错误,错误是这样的:

子节点“2”提前退出。关闭。诊断信息可以在名为 MSBuild _ * 的临时文件目录中的文件中找到。失败。

最初,除非您试图关闭 VisualStudio,否则生成将被挂起并且不显示任何错误。重新启动后,它会在构建时挂起很长一段时间,然后显示上面的消息。

删除隐藏的 .vs文件夹、重新生成/清理解决方案和重新启动 VisualStudio 无效。删除附加属性就可以了; 因此,它可能是某个不能正常工作的实际代码。

作为最后的手段,我将逐一删除最近的任何修改,直到问题得到解决,因为这里的任何解决方案都没有帮助。

更新

因为我习惯于开发传统的 WPF 应用程序,所以我没有意识到不能使用带有 UWP 的 .来“链接”XAML 名称空间。我试图使用

My.Namespace:SomeClass.SomeProperty="SomeValue"

然而,它应该只是

MyNamespace:SomeClass.SomeProperty="SomeValue"

虽然没有我喜欢的那么漂亮但显然这是唯一的办法。

When open a solution, generate it, I can see some build errors or warnings reported in the "Output tab", while the "Error tab" does not report any problem.

enter image description here

您可以看到“ Error tab”配置是 OK (选择了“ Build only”和“整个解决方案”)。

注意,在深入调查之后,我发现只有在开始构建时尚未显示“ Error 选项卡”时才会发生这种情况!

如果在构建之前激活了“ Error 选项卡”(或者在启动 Visual 时它是当前选项卡) ,那么新发现的错误/警告将正确显示:

enter image description here

就好像“ Error 选项卡”只有在可见的时候才会被初始化(这可能是真的,因为第一次单击它需要更多的时间才会显示出来... ...) ,如果不是这样,它就不会收集构建结果... ..。

到目前为止,没有比“ 在构建 之前激活 Error 选项卡”更好的答案了。

我打赌这就是为什么“重启 VS”有时候会奏效。您看到“ Error tab”是空的,您关闭并重新启动 VS,然后,“ Error tab”默认显示为 VS 还原了上一个会话的当前活动选项卡。您构建并且现在“错误选项卡”被填充... !你只是运气好。

注意: 报告一个 VS 错误: https://connect.microsoft.com/VisualStudio/feedback/details/3132689

对我有效的方法是:

关闭所有文档为我解决了这个问题(如果 intelliSense 停止工作,也是同样的解决方案)

(右击标签-关闭所有文档)

试试这个

排除 "mstscax.dll"从依赖为我工作。

利基问题: 我刚才遇到了同样的问题,以上的答案似乎都没有帮助。

问题 是针对控制台程序的,不能将 Main ()方法标记为异步 * * ,这正是我所做的。不确定的是,为什么 Visual Studio 不能确切地指定为什么项目没有生成(我每次都得到0个错误和0个警告)。我正在使用 VisualStudio2015企业版。

Fix: The work around for that is 给你.

I don't know whether I am the only one who is facing this problem.

在我的例子中,当我打开 VisualStudio 时,时区是在 GMT + 1:00,构建是成功的。然后我将时区更改为 GMT + 5:30,然后在没有重新启动 Visual Studio 的情况下,我尝试运行应用程序,但是构建失败,没有任何错误或警告。

我将时区改回 GMT + 1:00,构建成功,没有任何错误。

对我来说,构建失败没有错误,但经过一些调查后,我发现 VS 没有找到对 MSHTML 的引用。

enter image description here

该行为出现在 Windows10更新之后。要修复它,您需要从 GAC 注册程序集。如何做到这一点,去这个答案 Windows 10上的 MSHTML DLL,这是我发现我的答案。

在更新了 dll 文件之后,发现新文件的目标是更高版本的。NET 架构。解决方案是转到 ProjectProperties 并将 Target 框架更改为适当的版本。

检查警告. 。

我有了带目标的新类库。Net Framework 4.5,而引用项目为4.0,引起了引用问题。

在用 target.Net Framework 4.0修改了类库之后,它就正常工作了。

您应该在“整个解决方案”的“错误列表”的右侧设置组合框,以查看所有错误

上面的答案对我没有任何帮助。经过多次实验,我终于发现这个问题是微软的一个参考。网。其中一个项目中的编译器 v2.10.0。VS2015使用不支持该版本 Microsoft 的 MSBuild v14。网。编译器。

在目录中更改 MSBuild.exe (C: Program Files (x86) MSBuild 14.0 Bin)

所以我只是替换了其他电脑的 MSBuild.exe,它是 vs2015。

现在好了。

我通过将.NET Framework 从4.5.2改为4.0找到了解决方案。

问题是由于引用与当前选择的框架不兼容造成的。

我刚刚清除了过滤器,它对我很有用。清除所有过滤器图标位于邮件框附近。

启动一个新项目。将所有代码复制到名称空间 Console App38450983450以下。

将其粘贴到名称空间 ScreweUpConsole App102343下面的新项目中

构建和运行完美

In my case this was caused by a path to a filename which was too long for Windows. I found it by reverting to a previous version in git.