我目前正在尝试在虚拟机中构建我的C#代码
代码在本地计算机(Win7,64bit,Visual Studio 2008 Prof)上编译良好。
在我的虚拟机(Win7,64位,Visual Studio 2008教授)上,相同的项目文件无法构建,并出现以下错误:
Solution file error MSB5010: No file format header found.
MSBuild(本地机器):
Microsoft (R)-Buildmodul, Version 3.5.30729.5420
[Microsoft .NET Framework, Version 2.0.50727.5456]
MSBuild(虚拟机):
Microsoft (R)-Buildmodul, Version 3.5.30729.5420
[Microsoft .NET Framework, Version 2.0.50727.5456]
项目文件的开头如下所示:
<empty line>
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = [...]
就MSBuild的版本输出正确而言,我使用的是相同版本的MSBuild。
但为什么一台机器上的构建失败却在本地运行良好? o.O
更新
我删除了导致另一个错误的空行:
Microsoft (R)-Buildmodul, Version 3.5.30729.5420
[Microsoft .NET Framework, Version 2.0.50727.5456]
Copyright (C) Microsoft Corporation 2007. Alle Rechte vorbehalten.
Project.sln(44): Solution file error MSB5008:
Error parsing the solution configuration section in solution file.
The entry "" is invalid.
更新
Visual Studio的语言是否重要?在我的本地机器上,我安装了英文版,而虚拟机上安装了德文版。
答案 0 :(得分:2)
确保行结尾设置为Windows样式(CRLF)而不是Unix样式(LF)。如果设置不正确,它们可能会在您从源代码管理结账时无意中更改。
有关设置SVN行结束属性的详细信息,请参阅此question。