【发布时间】:2011-09-07 07:36:13
【问题描述】:
我们将 TFS 2010 与 VS 2010 一起用于 PHP Web 项目。实际上我们没有任何 .proj 或 .sln 文件,所以我自己制作了构建,它看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/>
<ItemGroup>
<ZipFiles Include="**\*.*"/>
</ItemGroup>
<Target Name="Zip" >
<Zip Files="@(ZipFiles)" ZipFileName="$(OutDir)myzip.zip" />
</Target>
<Target Name="Build" DependsOnTargets="Zip">
<Message Text="My Build Complete - $(BuildNumber) - $(TeamProject) - $(BuildProperties)" />
</Target>
<Target Name="AfterBuild">
<MakeDir Directories="Testing" />
<Message Text="My AfterBuild- $(BuildNumber) "></Message>
</Target>
</Project>
我已在 VS 的构建定义中将构建编号配置为 "$(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.r)" ,并且正确创建了网络路径上的放置文件夹。
问题在于 $(BuildNumber) 或 $(TeamProject) 或 $(BuildProperties) 为空。此外,似乎“我的 Afterbuild”从未被执行。
为什么我的变量是空的以及如何从指定的构建定义中获取构建号?
【问题讨论】:
标签: msbuild