在VS 2017中编译MVC项目时拒绝访问roslyn文件夹

Mig*_*Slv 4 compiler-errors roslyn visual-studio-2017

经过几次调试后,我再也无法编译项目了.

编译为一些系统程序集提供了几个访问错误,如下面的错误,所有这些都与roslyn bin文件夹有关:

错误MSB3021:无法将文件...\packages\Microsoft.Net.Compilers.2.2.0\tools\System.Collections.Immutable.dll"复制到"bin\roslyn\System.Collections.Immutable.dll".访问路径'bin\roslyn\System.Collections.Immutable.dll'被拒绝.

重启到VS无法解决.该项目使用IIS express运行,并且没有运行IIS express进程.

只有解决方案是重启.

我正在使用VS2017,更新2

Mar*_* H. 19

我实际上面临同样的问题.在我的例子中,它是VBCSCompiler.exe,这是有道理的,因为"Roslyn"(在路径名中找到)是".NET编译器平台"的内部名称.所以我能够通过终止这个过程来解决构建问题.

但这只是一种解决方法.我仍然不知道为什么进程继续运行并在我停止调试后保留文件句柄.


小智 9

将Microsoft.CodeDom.Providers.DotNetCompilerPlatform更新为1.0.6或更新版本.您可以参考链接 https://github.com/aspnet/RoslynCodeDomProvider/issues/10

  • 更新版本(撰写本文时为1.0.8)绝对没有为我解决问题.完全删除Microsoft.CodeDom.Providers.DotNetCompilerPlatform似乎工作正常.一切仍然建立和工作. (3认同)
  • 更新软件包的版本肯定解决了这个问题. (2认同)