【发布时间】:2018-01-12 12:26:27
【问题描述】:
我最近将新的 .NET 编译器 NuGet 包 (Microsoft.CodeDom.Providers.DotNetCompilerPlatfor) 添加到现有的旧 MVC.NET 网站。现在,当尝试发布网站时,出现以下异常:
找不到路径的一部分…… \obj\DEV\AspnetCompileMerge\Source\bin\roslyn\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'.
关于如何解决这个问题的任何想法?
【问题讨论】:
-
您是否在
bin文件夹中发布roslyn文件夹? -
我正在使用 Visual Studio Web 项目的内置“发布网站”功能。
-
您在 TFS 中使用的是哪个版本,旧的 XAML 版本还是新的 vNext 版本?您能否分享详细的 MSBuild Arguments 和更多相关日志?
-
@Patrick-MSFT:我不完全确定。我使用 Visual Studio Web 项目右键菜单的“发布”选项(请参阅:i.imgur.com/ThZLFtB.png)。您要查找哪些日志,我在哪里可以找到这些日志?我在最初的问题中包含了从 Visual Studio 生成的构建输出。
-
@Schoof 如果是这样,看起来您在本地遇到问题。它与 TFS 构建无关。建议您删除
tfsbuild标签并添加一些标签,例如msbuild、Nuget。由于没有安装新的 Nuget 包,所以一切正常。
标签: asp.net .net msbuild nuget roslyn