phingってどうなんでしょう?

最近、phingを使い始めました。JavaでいうAntみたいなものです。

ちなみに、PHP 5.2.5、phing 2.3.0, PHPUnit 3.2.21, PhpDocumentor 1.4.2, xdebug 2.0.3といった環境です(Mac OS Xです)。

まだ、exampleを動かしたくらいなのですが、変だなあと思った点がいくつか。

・exampleがそのままじゃ動かない

build.xmlとかTestCaseファイルとかをちまちま修正しないといけませんでした。

phingと連携する、phpunitとの組み合わせの問題なのかもしれないけど、最初のexampleくらい、簡単に動かせるようになって欲しい。

・PhpDocumentorTaskの動作がおかしい

$ phing docs

と単独でタスクを実行すると、うまく動くのですが。

<target name=”build” depends=”test,prepare,reports,docs”>

となっていて依存性がある状態でphing buildを実行するとdocsの処理中にエラーになりました。

docsをdependsから外したり、docsを最初に実行するようにdependsを修正するとOKなんですが、主旨からするとdocsは最後に実行して欲しいところです。

・dependsの実行順序について

phingドキュメントのGeting Startedを見ると、

 <target name="D" depends="C,B,A" />

Suppose we want to execute target D . From its depends attribute, you might think that first target C , then B and then A is executed. Wrong! C depends on B , and B depends on A , so first A is executed, then B , then C , and finally D .

となっているのです。Dを実行したいとき、depends属性によって、C->B->Aの順に実行されると思うだろうけど、間違い。A->B->Cが実行されて、Dが最後に実行される、と書いてあるように読める。

でも、実際の動きと違うんだよなあ。まあ、実際の動きが正しいんだろうけれど。

最後のはともかく、phpdocタスクは正しく動かしたいなあ。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>