1

我正在创建一个自定义 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 中的自定义任务?

4

1 回答 1

0

您的标记类应该扩展 DataType 类。没有那个,phing会给你带来问题。

如果这没有帮助,请提供包含最少(但完整)代码的粘贴来重现问题。

于 2013-09-30T06:19:05.240 回答