Phing - 在开始和构建结束时做一些事情,无论任务如何

时间:2013-12-16 18:26:14

标签: php build phing

对于我的Phing构建,我想在本地文件中记录开始和结束时间。在构建期间将使用此时间作为参考,以确定在上次构建之后修改了哪些源文件。无论这个任务叫做什么,我都希望这个能够发挥作用。

到目前为止我遇到的一些问题:

在记录新时间之前,我从文件中检索开始时间。但是当我使用foreach循环时,重新定义构建属性,并在属性中记录新的开始时间。也许我可以通过在依赖的任务中定义属性来解决这个问题,但我不想为每个任务设置这个依赖...

而且我不知道如何制作最后运行的内容,而与用户选择运行的任务无关。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

在重新阅读您的问题时编辑整个答案 - 您需要独立于任务运行的部分。

<target name="taskwrapper">
   <phingcall target="runfirst" />
   <phingcall target"${target} />
   <phingcall target="runlast" />
</target>

<target name="runfirst">
  //Do stuff first
</target>

<target name="runlast">
  //Do stuff last
</target>

然后在命令行中,您只需将预期的任务作为争论传递。

phing taskwrapper -Dtarget=desired_task

实际上没有对此进行测试,但似乎它应该可以正常工作。