如何在文件合并任务中使用CCNetLabel?从我发现我必须使用dynamicValues。我有这样的事情,它没有任何帮助吗?
<publishers>
<merge>
<dynamicValues>
<replacementValue property="files">
<format>D:\Testoutput\{0}\*.xml</format>
<parameters>
<namedValue name="$CCNetLabel" value="Default" />
</parameters>
</replacementValue>
</dynamicValues>
</merge>
<xmllogger />
<modificationHistory onlyLogWhenChangesFound="true" />
<statistics />
</publishers>
答案 0 :(得分:3)
在您的脚本中,您尝试生成以下配置(故意我使用的是易于阅读的简写符号):
<publishers>
<merge>
<files>D:\Testoutput\$[$CCNetLabel]\*.xml</files>
</merge>
<xmllogger />
<modificationHistory onlyLogWhenChangesFound="true" />
<statistics />
</publishers>
这不起作用,因为<files>
是一个数组,所以你需要像:
<publishers>
<merge>
<files>
<file>D:\Testoutput\$[$CCNetLabel]\*.xml</file>
</files>
</merge>
<xmllogger />
<modificationHistory onlyLogWhenChangesFound="true" />
<statistics />
</publishers>
不幸的是,这不起作用,因为<dynamicValues>
仅支持<merge>
,<files>
标记不支持<publishers>
<exec>
<executable>C:\Windows\system32\cmd.exe</executable>
<buildArgs>/C copy D:\Testoutput\$[$CCNetLabel]\*.xml D:\Testoutput\FixedDir</buildArgs>
</exec>
<merge>
<files>
<file>D:\Testoutput\FixedDir\*.xml</file>
</files>
</merge>
<xmllogger />
<modificationHistory onlyLogWhenChangesFound="true" />
<statistics />
<exec>
<executable>C:\Windows\system32\cmd.exe</executable>
<buildArgs>/C del D:\Testoutput\FixedDir\*.xml</buildArgs>
</exec>
</publishers>
。我认为目前(版本1.6)不可能在这里使用集成属性。
我将使用以下解决方法来实现相同的结果:
{{1}}