我们有一个在每晚构建之前运行的进程.如果进程失败,则生成文本文件.我需要做的就是检查文件是否存在,如果存在,则导致MSBuild失败.
我目前尝试过以下方法:
<CreateProperty Condition="Exists('C:\Process\Fail.txt')"
Value="false">
<Output TaskParameter="Value" PropertyName="ProcessTestPassed"/>
</CreateProperty>
<Message Text="Process did not pass" Condition="Exists('C:\Process\Fail.txt')" ContinueOnError="false" />
<ReadLinesFromFile File="C:\Process\Fail.txt" Condition="'$(ProcessTestPassed)'=='false'" ContinueOnError="false" >
<Output TaskParameter="Lines" ItemName="FileContents" />
</ReadLinesFromFile>
<Message Text="FileContents: $(FileContents)" Condition="'$(ProcessTestPassed)'=='false'" ContinueOnError="false" />
Run Code Online (Sandbox Code Playgroud)
这给出了这个输出的传递构建:
Task "CreateProperty"
Done executing task "CreateProperty".
Task "Message"
QAWizardProTestPassed did not pass
Done executing task "Message".
Task "ReadLinesFromFile"
Done executing task "ReadLinesFromFile".
Task "Message"
FileContents:
Done executing task "Message".
Run Code Online (Sandbox Code Playgroud)
我知道以上可能是矫枉过正,但我只需要一些工作!我在这里想念的是什么?!
谢谢,德里克
Bru*_*pes 38
正如@dprice在评论中指出的那样,最好的解决方案是:
<Error Condition="Exists('C:\Process\Fail.txt')" Text="Process did not pass!" />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14506 次 |
| 最近记录: |