我的自定义NAnt任务依赖于某个文件集。它被认为是在任务执行时定义的。我想确保在使用文件集之前已经定义了它。我在想一些类似于property::exists('property')的东西。
我找不到合适的函数。是否可以开箱即用NAnt (或NAntContrib)?
发布于 2011-12-19 22:34:51
一般来说,任务不应该依赖于文件集或属性。相反,它们应该采用显式参数。现有的文件集可以使用refid重用,因此不会导致重新声明。示例语法:
<myTask><filesetParameter refid="compileUs"/><myTask>如果引用的文件集没有定义,NAnt将抛出一个异常--这是正常的(预期的)行为,因为此时构建不能继续。
在您的任务中,该属性的定义如下:
[TaskName("myTask")]
public class MyTask : Task
{
[TaskAttribute("filesetParameter", Required = true)]
public FileSet FilesetParamter
{ get; set; }
}https://stackoverflow.com/questions/8559990
复制相似问题