gpt4 book ai didi

tfs - 如何编写依次运行两个批处理文件的 TFSBuild.proj 文件?

转载 作者:行者123 更新时间:2023-12-04 22:35:47 27 4
gpt4 key购买 nike

我必须编写一个仅按顺序运行两个批处理文件的 TFSBuild.proj 文件。我只需要从构建定义中调用 proj 文件,proj 文件将依次调用两个批处理文件。所有构建都将由驻留在构建服务器上的批处理文件完成。

我在构建服务器上放置了一个批处理文件。以下是我编写的TFSBuild.proj文件:

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="GetLatest" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">

<Target Name="EndToEndIteration"
Condition=" '$(IsDesktopBuild)'!='true' "
DependsOnTargets="$(EndToEndIterationDependsOn)" >
<CallTarget Targets="GetLatest"/>
</Target>

<Target Name="GetLatest">
<Exec Command="C:\BuildScript\GetFromTFSTask.bat" />
</Target>
<Target Name="BuildStampVer">
<Exec Command="C:\BuildScript\BuildTask.bat" />
</Target>
</Project>

我收到一个错误:

The command "C:\StampBuild\GetFromTFS.bat" exited with code 3.

我需要从给定路径的构建服务器运行批处理文件,我正在从我的开发服务器运行构建。

最佳答案

读这个。

http://www.danielfortunov.com/software/ $daniel_fortunovs_adventures_in_software_development/2009/05/21/invoking_batch_files_from_msbuild?source=ActivityLog

更新 - 示例代码:此示例是您修改后的代码,以使用 EndToEndIterationDependsOn 属性来指示 MSBuild 在运行 EndToEndIteration 时应调用的依赖目标的顺序。这有意义吗?

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="GetLatest" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">

<PropertyGroup>
<EndToEndIterationDependsOn>
GetLatest;
BuildStampVer
</EndToEndIterationDependsOn>
</PropertyGroup>
<Target Name="EndToEndIteration"
Condition=" '$(IsDesktopBuild)'!='true' "
DependsOnTargets="$(EndToEndIterationDependsOn)" >
</Target>

<Target Name="GetLatest">
<Exec Command="C:\BuildScript\GetFromTFSTask.bat" />
</Target>
<Target Name="BuildStampVer" DependsOnTargets="GetLatest" >
<Exec Command="C:\BuildScript\BuildTask.bat" />
</Target>
</Project>

关于tfs - 如何编写依次运行两个批处理文件的 TFSBuild.proj 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9077496/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com