我只是构建人员,我没有编写网络应用程序,也不太了解网络应用程序(我敢肯定,这将变得非常清楚)。
所以老兄告诉我我们需要运行“msbuild /T:Package /P:Configuration=Release”来打包他的应用程序。好的。他的构建定义中有多个解决方案,其中只有一个需要 Package 目标,所以我编写了一个愚蠢的小 msbuild proj 文件来添加到他的 TFS 构建定义中,默认目标如下所示:
<Target Name="Package" Condition=" '$(Configuration)' == 'Release' ">
<MSBuild Projects="HisApp.csproj"
Properties="Configuration=$(Configuration)"
Targets="Package" />
</Target>
将其添加到构建定义中,但它失败了:
Build started 8/7/2012 7:17:48 PM.
Project "C:\path\to\MyDumbScript.proj" on node 1 (default targets).
Package:
Project "C:\Path\to\MyDumbScript.proj" (1) is building "C:\Path\to\HisApp.csproj" (2) on node 1 (Package target(s)).
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets(1737,5): error : Value cannot be null. [C:\Path\to\HisApp.csproj]
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets(1737,5): error : Parameter name: type [C:\Path\to\HisApp.csproj]
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets(1737,5): error : Unknown error (0x80005000) [C:\Path\to\HisApp.csproj]
Done Building Project "C:\Path\to\HisApp.csproj" (Package target(s)) -- FAILED.
Done Building Project "C:\Path\to\MyDumbScript.proj" (default targets) -- FAILED.
Build FAILED.
"C:\Path\to\MyDumbScript.proj" (default target) (1) ->
"C:\Path\to\HisApp.csproj" (Package target) (2) ->
(GetProjectWebProperties target) ->
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets(1737,5): error : Value cannot be null. [C:\Path\to\HisApp.csproj]
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets(1737,5): error : Parameter name: type [C:\Path\to\HisApp.csproj]
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets(1737,5): error : Unknown error (0x80005000) [C:\Path\to\HisApp.csproj]
0 Warning(s)
2 Error(s)
Time Elapsed 00:00:00.82
所以这就像泥巴一样清晰。
问题:
当构建定义调用多个解决方案时,是否有一些更直接的方法可以从 Team Build 调用包目标?
为什么会失败?
谢谢。