发布:找不到路径的一部分... \ obj \ DEV \ AspnetCompileMerge \ Source \ bin \ roslyn \ csc.exe'

时间:2017-08-04 14:07:33

标签: asp.net .net msbuild nuget roslyn

我最近将新的.NET编译器NuGet包(Microsoft.CodeDom.Providers.DotNetCompilerPlatfor)添加到现有的旧版MVC.NET网站。现在,在尝试发布网站时,我遇到以下异常:

  

无法找到路径的一部分......   \ OBJ \ DEV \ AspnetCompileMerge \源\ BIN \罗斯林\ CSC.EXE'

我已经尝试了question中提到的所有内容,但没有任何效果。毕竟,这是一个稍微不同的问题。该帖子中提到的问题是构建异常,我的解决方案在本地构建良好。卸载NuGet包有效,但这不是一个真正的解决方案。

问题与this问题基本相同,但也没有解决方案。

发布输出:

4>------ Publish started: Project: Jdn.ArticleCatalogue.Web, Configuration: DEV Any CPU ------
4>Connecting to \\vm-arcawebdev01\WEBSITES\ArticleCatalogue...
4>Transformed Web.config using D:\DOTNET\Local\Logistics.Web\Portal\DEV\Application Projects\Article Catalogue\Jdn.ArticleCatalogue.Web\Web.DEV.config into obj\DEV\TransformWebConfig\transformed\Web.config.
4>Copying all files to temporary location below for package/publish:
4>obj\DEV\AspnetCompileMerge\Source.
4>C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler.exe -v / -p "D:\DOTNET\Local\Logistics.Web\Portal\DEV\Application Projects\Article Catalogue\Jdn.ArticleCatalogue.Web\obj\DEV\AspnetCompileMerge\Source" "D:\DOTNET\Local\Logistics.Web\Portal\DEV\Application Projects\Article Catalogue\Jdn.ArticleCatalogue.Web\obj\DEV\AspnetCompileMerge\TempBuildDir" -keyfile "..\..\..\Solution Items\Jdn.LogisticsPortal.snk" 
4>ASPNETCOMPILER(0,0): Error ASPRUNTIME: Could not find a part of the path 'D:\DOTNET\Local\Logistics.Web\Portal\DEV\Application Projects\Article Catalogue\Jdn.ArticleCatalogue.Web\obj\DEV\AspnetCompileMerge\Source\bin\roslyn\csc.exe'.

关于如何解决这个问题的任何想法?

2 个答案:

答案 0 :(得分:6)

这是known issue,因此Roslyn二进制文件未正确复制到发布目录。如果您安装Microsoft.CodeDom.Providers.DotNetCompilerPlatform 1.0.7,则应该修复此问题。

似乎存在一些遗留问题tracked here

答案 1 :(得分:0)

在将MVC .NET应用程序发布到我的本地路径时,我遇到了同样的问题。我解决了通过nuget包删除 Microsoft.CodeDom.Providers.DotNetCompilerPlatform 的问题。