你能否将ANT构建文件用作Phing构建文件?

5
我刚开始尝试使用使用PHP编写的Phing构建脚本。根据我所了解,Phing基于Apache Ant(使用Java编写)构建。两者都使用XML构建文件并具有类似的语法。因此,我想请有经验的人回答:如果我在Github或其他地方找到一个Ant构建文件,能否在Phing脚本中使用它而不更改其语法?就像可以与Ant或Phing一起使用的“插入式”XML文件一样?或者有什么区别?
2个回答

6

有一些细微的差异。我建议使用ant构建文件,对于每个目标,在phing文档中查找目标名称,以确保它是相同的还是不同的。我不能立即想起来,但你不能只是把它放进去。还有一些phing特有的事情,你可以做与php相关的事情,比如phpdoc目标等。


谢谢,所以有些东西应该可以工作,我只需要仔细检查每个项目。 - JasonDavis

0

我最近也遇到了同样的问题,我发现一些差异:

  • antcall 应该改为 phingcall
  • <if> 标签似乎只在 PHING 上工作(或者添加了 Ant-contribs library
  • <fixcrlf> 标签似乎只在 ANT 上工作

也许还有其他的差异。

解决方案

对我来说最好的解决方案是使用 adhocTask 重写缺失的任务。如果可能的话,可以基于现有的 PhingTask 进行重写。

例如,要使 <antcall> 工作,我只需像这样扩展 PhingCallTask

<adhoc-task name="antcall"><![CDATA[
  class AntCall extends PhingCallTask {}
]]></adhoc-task>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接