如何在TFS 2015 vNext Build definination中使用项目宏?

时间:2016-05-01 16:56:11

标签: tfs msbuild macros tfs2015

我想使用当前csproj的宏,例如$ {TargetPath} $(TargetName),在vNext Build defination中作为MSBuild参数的vs build任务属性的一部分,进行一些复制等。

但我发现它不起作用,在构建日志中,宏没有变成绝对路径。

有没有办法像csproj post-build事件一样使用这些宏?我没有在msdn上找到关于此的描述,我无法在每个csproj中使用它,因为我们有多个一千个项目文件,逐个编辑prj文件并不好:(

非常感谢你的帮助。

更新

我希望每个项目在构建时只输出自己的程序集而没有任何引用的程序集。但是我无法更改项目文件来修改引用属性" copy local"为假。

2 个答案:

答案 0 :(得分:0)

您只需将其添加为MSBuild参数: enter image description here

答案 1 :(得分:0)

如果您的意思是希望在构建后事件中实现与此问题Visual Studio Post Build Event - Copy to Relative Directory Location相同的功能。在vnext构建中没有像post-build这样的东西。

您可以添加几个步骤来复制程序集(一个项目一步)并在步骤中指定副本根。请参阅此问题Copy one file in target directory on deploy from visual studio team services  但是,正如您所提到的,有一千个项目文件。您可以创建一个powershell脚本并将其添加到构建定义中以复制文件。