我一直在用LightSwitch项目敲打这个问题。它在VS 2013中运行得很好,但除了我们开发人员的一台PC之外,使用msbuild的自动构建失败了。我们也无法在构建服务器上运行这些构建,因为我们不断收到此错误。我们仔细地比较了可以与其他PC建立的PC的设置,但是我们发现和消除的所有差异并没有产生太大的影响。
以下是我们为启动构建而发出的命令(显然,这些构建命令都封装在构建脚本中,但这就是它所构成的):
"C:\Program Files (x86)\MSBuild\12.0\bin\msbuild.exe" /p:Configuration=Release /v:quiet /t:Publish /property:PublishLocation=C:\Build\dispatcher\2.3.1007\server\software\Administration\DISP.Administration\Publish C:\Build\dispatcher\2.3.1007\server\software\Administration\DISP.Administration\Administration.sln
结果我们得到:
Microsoft (R) Build Engine version 12.0.40629.0
[Microsoft .NET Framework, version 4.0.30319.42000]
Copyright (C) Microsoft Corporation. All rights reserved.
C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(2317,7): error MSB4057: The target "
CreateManifestResourceNames" does not exist in the project. [C:\Build\dispatcher\2.3.1007\server\software\Administra
tion\DISP.Administration\AdministrationTool.lsxtproj]
顺便说一下,当使用项目文件AdministrationTool.lsxtproj作为构建命令的最后一个参数时,我得到了同样的错误。
如果有人会告诉我需要哪些其他信息,我会很乐意提供更多信息。