TFS 2018生成失败,出现错误MSB6006:“csc.exe”退出,代码为1

问题描述 投票:1回答:1

我最近构建了一个新的TFS 2018(更新3)服务器并添加了Visual Studio Build Tools(v15.7.1)。创建一个非常简单的C#项目后,服务器构建失败,错误MSB6006:“csc.exe”退出代码1.我打开调试并发现错误

无法加载文件或程序集“Microsoft.CodeAnalysis.CSharp,Version = 2.8.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35”或其依赖项之一。该系统找不到指定的文件。 (TASKID:32)

我的项目没有引用这个库,我在项目级别关闭了代码分析,所以我认为这是VS Build Tools的一个问题。有没有人知道解决方法或修复此问题的方法?

我还注意到了VS Build Tools的更新版本(v15.8)。我还没有尝试更新构建服务器,因为生成离线包,压缩,上传等的高度复杂性,但如果无法找到短期修复,那将是我的下一步工作。

基本上,我们的新服务器已经死了,没有解决方案,所以我希望有人在这里得到答案,否则,我最终可能会把这一切都整理在一起以获得更可靠的东西。

c# visual-studio tfs tfsbuild
1个回答
2
投票

似乎是版本15.7.1中的错误。目前还不清楚是否有任何其他版本受此错误的影响,但升级到VS Build Tools到15.8.2解决了这个问题。

要发现错误MSB6006的基本问题:使用代码1退出“csc.exe”,请在MSBuild参数中设置以下标志:

/v:diag

这将产生类似于以下内容:

2018-08-29T21:07:25.0630293Z                      Task Parameter:WarningLevel=4 (TaskId:23)
2018-08-29T21:07:25.0630927Z                      C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\Roslyn\csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /errorreport:prompt /warn:4 /define:TRACE /highentropyva+ /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\Microsoft.CSharp.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\mscorlib.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.Core.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.Data.DataSetExtensions.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.Data.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.Net.Http.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.Xml.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.Xml.Linq.dll" /debug:pdbonly /filealign:512 /optimize+ /out:obj\Release\Epay.Common.Core.dll /ruleset:"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Team Tools\Static Analysis Tools\\Rule Sets\MinimumRecommendedRules.ruleset" /subsystemversion:6.00 /target:library /utf8output Extensions\ObjectExtensions.cs Properties\AssemblyInfo.cs "C:\Windows\TEMP\.NETFramework,Version=v4.6.1.AssemblyAttributes.cs" (TaskId:23)
2018-08-29T21:07:25.0631621Z                      Using shared compilation with compiler from directory: C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\Roslyn (TaskId:23)
2018-08-29T21:07:25.5959306Z 16:07:24.786     6>CoreCompile: (TargetId:111)
2018-08-29T21:07:25.5959917Z                      Could not load file or assembly 'Microsoft.CodeAnalysis.CSharp, Version=2.8.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified. (TaskId:63)
2018-08-29T21:07:25.6127920Z ##[error]C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\Roslyn\Microsoft.CSharp.Core.targets(52,5): Error MSB6006: "csc.exe" exited with code 1.
2018-08-29T21:07:25.6128554Z 16:07:25.608     6>C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\Roslyn\Microsoft.CSharp.Core.targets(52,5): error MSB6006: "csc.exe" exited with code 1. [D:\TfsData\BA01\_work\8\s\Epay.Common\Security\Security.csproj]
2018-08-29T21:07:25.6141937Z                      Output Item(s): CscCommandLineArgs= (TaskId:63)
2018-08-29T21:07:25.6143738Z                    Done executing task "Csc" -- FAILED. (TaskId:63)
© www.soinside.com 2019 - 2024. All rights reserved.