我必須編寫一個僅依次運行兩個批處理文件的TFSBuild.proj文件。我只需要從構建定義中調用proj文件,proj文件將依次調用兩個批處理文件。所有的建築物都將由建立服務器上的批處理文件完成。如何編寫按順序運行兩個批處理文件的TFSBuild.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.
我需要在給定的路徑運行,從構建服務器批處理文件,我正在從建設我的開發服務器。
感謝尼克,但我無法解決我的問題。我已經添加了一些更多的信息,你可以看看它並建議。 – Ashutosh 2012-02-01 08:38:01
蝙蝠文件是否需要特定的工作目錄?你有沒有試圖自己手動運行它?另外,我看到EndToEndIteration在GetLatest上執行一個CallTarget,但我沒有看到你將BuildStampVer目標包含在要調用的目標中。你不應該把這個目標放在DependsOn或其他東西嗎? – 2012-02-01 15:35:05
嗨,尼克,我對proj文件沒有太多的想法。我必須編寫一個應該只按順序調用這兩個批處理文件的proj文件。我已經將所有內容寫入批處理文件,如果手動運行它,批處理文件工作正常。請建議我應該如何修改我的proj文件。 – Ashutosh 2012-02-03 11:18:19