カスタム phing タスクを作成し、ネストされた xml 要素を介してデータを渡そうとしています。私のタスクは正常に実行されますが、ネストされた要素を「作成」しようとするとエラーが発生します。例えば:
xml ビルド ファイルの一部:
<mycustomtask>
<option name="opt1" value="val1"/>
</mycustomtask>
タスク クラス ファイルの一部:
...
public function createOption(){
return new Option;
}
...
オプション クラス ファイルの一部:
class Option{
...
public function setName($str){
$this->name = $str;
}
public function setValue($str){
$this->value = $str;
}
}
私のタスクは、イントロスペクション ヘルパーからの「...'name' 属性をサポートしていません」という例外で常にエラーになります。
ここで私が間違っていることを誰かに教えてもらえますか? イントロスペクション ヘルパー クラスのトレース バックを開始しましたが、あまり進んでいません。また、メソッド phpdoc に @return doc ディレクティブを追加してみました。これは、イントロスペクション ヘルパーがそれらを解析しようとしていることがわかるからです。
または、多くの引数/オプションをxmlのカスタムタスクに渡す別の方法はありますか?