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

时间:2017-08-02 16:37:10

标签: compiler-errors visual-studio-2017 roslyn

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

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

错误MSB3021:无法复制文件 ... \包\ Microsoft.Net.Compilers.2.2.0 \工具\ System.Collections.Immutable.dll" to" bin \ roslyn \ System.Collections.Immutable.dll"。访问路径' bin \ roslyn \ System.Collections.Immutable.dll'被拒绝。

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

只有解决方案才能重启。

我正在使用VS2017,更新2

2 个答案:

答案 0 :(得分:18)

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

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

答案 1 :(得分:9)

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