在这里问我这样的问题我感到很内疚,但我很茫然,并会感激一些帮助。
像Web应用程序这样的概念验证是在一台PC上构建的,并放在一个repo上,可以在另一台PC上下载。最初设置了自动构建功能,Azure将在签入时自动构建和发布,但已删除。事情在两端都有效,直到一方包括大量被排除的变更。现在我看到以下错误:
“Microsoft.CodeAnalysis.BuildTasks.Csc”任务不可能 从程序集加载... \ packages \ Microsoft.Net.Compilers.1.0.0 \ build .. \ tools \ Microsoft.Build.Tasks.CodeAnalysis.dll。无法加载文件或程序集'file:/// ... \ packages \ Microsoft.Net.Compilers.1.0.0 \ tools \ Microsoft.Build.Tasks.CodeAnalysis.dll'或其依赖项之一。该系统找不到指定的文件。确认声明是否正确,程序集及其所有依赖项是否可用,以及该任务是否包含实现Microsoft.Build.Framework.ITask的公共类。
有没有人对从何处开始寻找问题有任何建议?
事实证明,NuGet包已经提交到存储库并破坏了所有内容。从repo中删除project \ project \ packages目录解决了所有构建问题,因为NuGet在构建时自动获取包。
我从packages文件夹中删除所有内容并重建解决方案。它对我有用。
就我而言,解决方案是:
使用Windows资源管理器并导航到违规路径:C:\ MyApplication \ Code \ Main \ ABCProject \ ABCProject.UI \ Bin
右键单击bin文件夹>选择属性>取消选中ReadOnly。
就我而言:这适合我。
事实证明,我的队友已经开始研究Windows 10开发并在他的机器上安装了Microsoft Build Tools 2015。
我安装了https://www.microsoft.com/en-us/download/details.aspx?id=48159的软件,问题解决了。
我刚刚在一台Windows 10机器的干净安装上尝试过这个问题,而我的问题最终是因为我没有安装.NET 3.5框架。这个stackoverflow问题有助于解释原因。
右键单击解决方案。转到此解决方案的管理Nuget包。在Browse Section上搜索Microsoft.Net.Compilers。
就我而言,解决方案是:
Microsoft.CodeDom.Providers.DotNetCompilerPlatform
。删除bin文件夹对我有用
在vs2017社区中,“构建”菜单中出现了一个新项目。它在我使用之后消失了,并被称为“优化项目构建包”。我点击它,它修复了一切,只是重新启动等我在两台机器上完成了。
它做了什么被删除Microsoft.net.compilers 2.10.0
并替换为Microsoft.CodeDom.Providers.DotNetCompilerPlatform 2.0.1
所以你去 - 更自动化......
我的项目是用.Net Core 2.2构建的,但我安装了.Net core 3.0预览版。我从我的系统中卸载了.Net Core 3.0并浏览了所有类库,删除了Microsoft.Net.Compilers 3.0,然后重建并运行了。
我为项目创建了一个新分支时遇到了这个错误。
它让我疯了一个小时。我通过互联网尝试了大部分建议,包括对这个问题的接受答案。
然后我关闭了项目,再次打开它,清理它并且错误消失了。所以这意味着这可能是缓存问题。
无论如何,只是想分享。
我也尝试了没有运气的最佳答案所以删除了我的bin和包dir的内容,关闭并重新打开VS,现在一切都很好。
我已经尝试过之前描述的所有解决方案,但都没有奏效
为我解决的是从NuGet包管理器更新Microsoft.Net.Compilers
Microsoft.Net.Compilers
。重新构建,清理解决方案并重新启动Visual Studio为我工作。
删除包并清理解决方案为我解决了这个问题。
删除这三个目录可以解决问题。
注意:从解决方案中包含的所有项目(包括测试项目)中删除/ bin和/ obj。
问题隐藏在TFS上,您需要从TFS中删除文件夹TestProject ... \ packages,签入,从本地目录中删除它并再次构建。成功了!