visual-studio - 在 TFS 构建定义中未触发 Visual Studio 项目的构建后事件
问题描述
我是 Team Foundation Build 的新手。我在 Visual Studio 中设置了所有 C# 项目的构建后事件,以将二进制文件复制到物理目录。每个项目中的命令行是:
xcopy "$(TargetDir)*.*" "$(SolutionDir)..\TempOutput\" /Y
当我在 Visual Studio 中构建解决方案时,会触发构建后事件并复制文件。但是在使用 TFS 构建定义构建时,不会触发事件。我需要在构建定义中单独设置什么来触发所有项目的构建后事件吗?
我的 TFSBuild.proj 中有这个,但仍然无法正常工作:
<PropertyGroup>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
</PropertyGroup>
解决方案
缩小与 TFS 构建定义相关的问题。您应该手动远程到构建代理并运行 msbuild 命令来触发构建,而不是通过 TFS 服务器。
由于您使用的是 XAML 构建,请查看以下内容:
Team Build 使用与 Visual Studio 构建不同的目录布局。对于任何构建的项目,所有二进制文件都放在一个文件夹中,因此会自动解决引用问题,并且很容易将 DLL 复制到最终的 Drop 文件夹中。
您应该使用 $(OutDir) MSBuild 变量来正确引用 VS 和 TFS 构建中的二进制目录。请参阅 是否有一个 MSBuild 和 TFSBuild 变量将指向二进制文件的位置? 了解一些细节。
推荐阅读
- arrays - C - 不同数组的成员共享指针
- audiokit - AudioKit 将增益应用于单声道 PCM 缓冲区
- flutter - 为什么 CustomScrollView 在 android 模拟器中不起作用?
- reactjs - React Context,如何在一个分支中更新上下文,以在另一个分支中使用
- xcode - 为什么我不能在操场上使用核心位置
- ios - iOS - 使用声音的 Arduino 通信
- typescript - Eslint Typescript“没有任何隐含”规则
- python - 将 pandas 系列转换为具有 NaN 值的 int
- javascript - WebRTC/PeerJS 查看流而不发送您自己的
- python - 渐变在拥抱脸模块中返回无